To make the dough, melt the butter and pour into a food processor with the semolina, flour, yeast, sugar, salt. Pulse until the mixture has the texture of fine sand.
Add the orange blossom water and milk and blend until the mixture comes together to form a stiff dough. Transfer to a clean bowl, cover with a clean tea towel and leave to rest at room temperature for 1 hour.
Meanwhile, to make the filling, place the dates, butter and spices in a saucepan with 50ml/2fl oz of water, and bring to the boil. Reduce the heat and stir for 4–5 minutes until a thick paste has formed. Remove from the heat and set aside to cool.
Preheat the oven to 180C/160C Fan/Gas 4 and line a baking tray with baking paper.
Break off walnut-sized balls of dough and flatten against a clean surface. Cup the flattened dough in your hand and stuff with a teaspoon of the date mixture. Fold the dough around the filling and seal.
If using a ma’amoul mould, press the filled dough into the cavity of the mould. Tap it sharply against a hard surface to release the shaped dough. If moulding free-hand, flatten the filled dough into a round and create an indentation in the centre with your thumb. If desired, use a sharp knife or cocktail stick to trace a pattern in the dough.
Continue to fill and shape the biscuits until all the dough and paste has been used. Place the rounds onto the tray and bake for 15 minutes until just cooked through. They should not colour and will harden as they cool.
Transfer to a wire rack to cool completely. Dust with a little icing sugar before serving.