Mix semolina, farina, flour, and mahlab in a large bowl. Add the melted ghee and mix thoroughly to combine. It should have the texture of wet sand. If it feels too dry, you can add an additional ¼ cup of ghee. Let this mixture sit at room temperature covered for at least an hour, but several hours to overnight is great. This allows the butter to fully soak into the grain, and helps create the melty, crumbly texture.
When ready to form the ma'amoul set your oven to 350°F/175°C. Line a baking sheet with a Silpat or parchment.
Once the butter has saturated for some time add your baking powder, milk, and rose water. Combine thoroughly but do not overmix. The dough should be soft and pliable but not sticky. If needed, you can add an extra tablespoon or two of milk or water.
Form a round ball with the dough (about a tablespoon, or more, depending on your mold size). Form a round ball with a teaspoon of date filling. Flatten the ball and place the date ball inside. Place in the mold and close, or roll the dough around the date ball and flatten into a round - decorate with a fork, if desired.
Place ma'amoul on the lined baking sheet about 1" apart, and bake for 15-20 minutes, until the bottoms of the ma'amoul are slightly golden (the tops will not be golden, this is okay). If not too crumbly, cool on a wire rack - if they are slightly crumbly and soft still leave them on the baking sheet 5 minutes before moving.
Dust with powdered sugar and dried rose petals if desired. Enjoy!