Preheat the oven to 180C/350F/Gas 4. Grease a 10-inch bundt pan, and set aside.
Whisk together the flour, baking powder, baking soda, salt, cinnamon, ginger, and nutmeg. Set aside.
Whisk together the eggs. Add the sugar, and whisk until combined. Add the melted butter and yogurt and whisk until combined. Mix in the dry ingredients, then fold in the grated carrots.
Pour half of the batter into the prepared pan.
For the Cheesecake Swirl
Using a handheld or stand mixer fitted with the paddle attachment, beat the cream cheese and sugar until combined. Beat in the egg and vanilla, then fold in the flour.
Spread the cheesecake mixture evenly over the cake batter, then pour the remaining batter on top.
Bake for 45 - 50 minutes or until a toothpick inserted into the centre comes out clean with moist crumbs.
Let cool in the pan for 15 minutes before removing and letting cool completely on a wire rack.
For the Icing
Using a handheld or stand mixer, beat together the icing sugar, cream cheese, heavy cream, and vanilla extract until smooth and combined. It should be thick and spreadable. Add more cream if needed.
Transfer to a piping bag, pipe over the cooled cake, then slice and serve.
Notes
*Make your own cake flour! Weigh out 3 cups (375g) of plain/all-purpose flour, remove 6 tablespoons, and replace with 6 tablespoons of cornflour/cornstarch. Sift well.Leftovers can be stored in the fridge for up to 2 - 3 days. You can bake this cake 1 day in advance. Allow to cool completely, then cover tightly and keep in the fridge until ready to glaze and serve.This cake also freezes well for up to 3 months. Thaw overnight in the fridge before serving.