Preheat oven to 160C. Line a cupcake pan with paper liners and spray the liners.
Shave or chop the milk chocolate and put it into a bowl.
Combine the butter and cream in a small saucepan over medium-high heat. When the cream mixture comes to a simmer, pour it over the chopped chocolate and stir gently to melt the chocolate.
In a medium bowl, whisk together the eggs, sugar, mayonnaise, cornstarch, cinnamon and salt just until the sugar has dissolved. Pour the chocolate mixture into the egg mixture and gently mix just until combined. Mixing too much will prevent the eggs from rising in the oven.
Scoop about 1/4 cup of the batter into each mould - it should come about 3/4 of the way up the sides.
Bake for approx 40-45 mins - do not overbake.
While baking, cut the white chocolate into roughly 1/2" pieces and set aside.
Immediately while the cupcakes are hot, add a chunk of the white chocolate in the centre of each by gently pushing it through the top of the cupcake in the centre.
Cool the pan on a rack for 10 mins then remove the cupcakes. Dust with icing sugar and serve warm.
Recipe Notes
To make this dairy-free, use dairy-free chocolate (i.e. Enjoy Life), dairy-free margarine (e.g. Earth Balance), and coconut cream