01 - Combine flour, sugar, yeast, and salt in a large mixing bowl. Add lukewarm milk, 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 and let rise in a warm location for 1 hour or until doubled in volume.
02 - Place raspberries, sugar, and lemon juice in a small saucepan. Simmer over medium heat for 7 to 8 minutes until thickened and jam-like consistency. Remove from heat and allow to cool completely before using.
03 - Beat cream cheese, icing sugar, rose water, and egg yolk together until smooth and creamy. Set aside at room temperature for easy spreading.
04 - Punch down risen dough to release air. Divide into 12 equal portions. Flatten each piece into a small disc approximately 3 inches in diameter. Arrange discs on a parchment-lined baking sheet, leaving space between each for rising.
05 - Create a deep indentation in the center of each dough disc using your thumb or the back of a spoon. Spoon 1 to 2 teaspoons of cheesecake filling into each well, then top with 1 teaspoon of cooled raspberry compote.
06 - Cover buns loosely with plastic wrap or clean kitchen towel. Let rise at room temperature for 30 to 40 minutes until noticeably puffy and expanded.
07 - Preheat oven to 350°F. Brush dough edges lightly with milk using a pastry brush. Sprinkle demerara sugar over the tops for crunch, if desired.
08 - Bake for 20 to 25 minutes until tops are golden brown and filling is set. Transfer to wire rack and cool for at least 15 minutes before serving. Garnish with chopped pistachios or rose petals while slightly warm, if using.