Preheat oven to 200 C.
Grease a round 9 inch baking pan. You can also line the pan with parchment paper, to avoid the kunafa sticking on the bottom of the pan (see notes).
Place the kunafa dough in a large bowl, and using your hands, shred the kunafa dough strands into approximately 1 inch pieces.
Pour the melted ghee or butter over the kunafa dough, and using your hands, mix well, making sure all the kunafa dough strands are covered with it.
Transfer 2/3 of the kunafa dough to the baking pan, and tightly pack it in using the your fingers or the back of a measuring cup. Make sure to create a wall around the sides of the pan.
Pour in half of the cooled cream filling, and spread it, but do not spread it right till the edges as it may seep out of the kunafa while baking.
Now add the cheese filling and spread.
Add the remaining cream filling and spread it evenly.
Cover with the remaining kunafa dough and again press so that the kunafa dough is packed. Make sure all edges around the pan are covered with the kunafa dough.
Place the pan in the oven and bake for 45 to 60 minutes, until the kunafa is golden brown. To check the doneness of the kunafa, insert a knife in the edge and gently lift to see if the kunafa has cooked from the bottom. My kunafa was ready in 45 minutes.
Remove from the oven, and immediately pour over the prepared rose water simple sugar syrup, using about 3/4 of it.
Let the kunafa rest for 5 to 10 minutes, in order to soak the syrup, and then flip it onto a serving platter.
Garnish with crushed pistachios.
Cut into wedges, and immediately serve, with reserved sugar syrup.
Kunafa is best eaten warm, but is equally delicious at room temperature.