Start by making the bread dough. In the bowl of a mixer, add the heavy cream, milk, egg, sugar, cake flour, bread flour, yeast, and salt (in that order). Using the dough hook attachment, turn on the mixer to “stir.” Let it go for 15 minutes, occasionally stopping the mixer to push the dough together.
After 15 minutes, the dough is ready for proofing. Cover the bowl with a damp towel and place in a warm spot for 1 hour. The dough will grow to 1.5X its original size.
After the bread dough has proofed for an hour, put the dough back in the mixer and stir for another 5 minutes to get rid of air bubbles. Dump the dough on a lightly floured surface and cut into 12 equal pieces. Form each piece into a circular bun, and place on a baking sheet. Cover the buns with a clean, dry kitchen towel and let rise for another hour.
While that's happening, make the topping. Add the dry milk powder to a mixing bowl. If your dry milk powder has some larger clumps, crush them up with your fingers so it’s uniformly powdery.
Add the flour, baking soda, baking powder, and superfine sugar. Stir to combine. Add the shortening, milk, egg yolk, and vanilla. Use your hands to mix everything together into a dough. If it’s too dry, add a little more milk a teaspoon at a time until it comes together. Cover tightly with plastic wrap and set aside at room temperature.
When the buns are done rising for a second time, preheat the oven to 350 degrees F. Separate the topping dough into 12 equal pieces and roll them into balls. On a clean surface, roll out each ball into a flat circle and place one onto each bun.
Brush with egg yolk and bake at 350 degrees for 12-13 minutes.
Makes 1 dozen buns.Feel free to substitute all-purpose flour for both the cake flour and bread flour! We have since extensively re-tested this recipe, and have not found that using 100% all-purpose flour in this recipe makes a meaningful difference to the result.