In the bowl of a stand mixer add the warm milk, yeast, sugar, melted butter, eggs, flour, salt, and orange zest.
Mix until well combined.
Use the dough hook attachment to knead the dough on medium speed for 5-8 minutes, until the dough is smooth and tacky to the touch, but not sticky. If you don’t have a stand mixer you can knead the dough by hand for about 10 minutes.
Transfer the dough to a clean, greased bowl and cover with plastic wrap. Let the dough rise in a warm place for 1-1.5 hours, until the dough has doubled in size.
While the dough is rising, add the cranberries, sugar, and cinnamon to a medium saucepan.
Heat on medium-low heat until the sugar melts, the cranberries have popped, and the mixture is thick, stirring frequently, about 10 minutes. Let cool completely.
Once dough has risen, transfer to a lightly floured surface and roll into a 14×8-inch rectangle.
Spread the cranberry filling over the dough, leaving about a ½ -inch margin around the edge of the dough.
Roll the dough up lengthwise into a log shape. Use a serrated knife to cut 1 inch pieces of dough, until you get about 10-12 rolls.
Place the cut up rolls into a lightly greased 9 or 10-inch cake pan. Cover and let the rolls rise for another 20-30 minutes, until they are puffy.
Preheat the oven to 350 F.
Drizzle the tops of the rolls with the heavy cream.
Bake the rolls in the oven for 25-30 minutes until they are golden on top. Let cool slightly while you make the glaze.
In a medium bowl, add the powdered sugar and orange juice and whisk together until smooth.
Spread the glaze over warm (not hot) rolls. Top with more orange zest if you’d like, then serve immediately while warm.