01 - Combine flour, sugar, yeast, and salt in a large mixing bowl. Pour in lukewarm milk, add softened butter and egg. Mix until shaggy dough forms, then knead by hand or stand mixer for 8 to 10 minutes until smooth and elastic. Cover bowl with plastic wrap and let rise in warm draft-free area for 1 hour until doubled in volume.
02 - Place raspberries, sugar, and lemon juice in small saucepan. Simmer over medium heat for 7 to 8 minutes, stirring occasionally, until mixture thickens to jam-like consistency. Remove from heat and transfer to small bowl to cool completely.
03 - Beat cream cheese with icing sugar until smooth and creamy. Add rose water and egg yolk, continue mixing until fully incorporated and glossy. Set aside until ready to fill.
04 - Punch down risen dough to release air. Divide into 12 equal portions. Roll each portion into smooth ball, then flatten into disc approximately 3 inches in diameter. Arrange discs on parchment-lined baking sheet spaced 2 inches apart.
05 - Press deep indentation into center of each disc using thumb or back of spoon. Spoon 1 to 2 teaspoons cheesecake filling into each well, then top with 1 teaspoon cooled raspberry compote. Avoid overfilling to prevent spillage during baking.
06 - Cover baking tray loosely with clean kitchen towel. Set aside in warm place for 30 to 40 minutes until buns appear puffy and visibly increased in size.
07 - Set oven temperature to 350°F while buns complete their final rise. Arrange oven rack to center position.
08 - Brush exposed dough edges with milk using pastry brush. Sprinkle demerara sugar over tops if desired. Bake for 20 to 25 minutes until golden brown across surface and bottoms sound hollow when tapped. Cool on baking sheet for 10 minutes before garnishing.
09 - Sprinkle chopped pistachios or dried rose petals over warm buns for decoration. Serve warm or at room temperature.