Before you begin, make sure all ingredients are at room temperature. Preheat the oven to 320°F / 160°C.
Line a square cake tin (8 inch) with parchment paper.
Sift the flour and baking powder over a large bowl and add a pinch of salt.
Mix the butter with the sugar until it's nice and soft. Do this for about 5 to 10 minutes. It seems like a long time, but it will make the cake fluffier.
Add the mascarpone and mix until combined.
Now, one by one, beat the eggs, lemon zest, and lemon juice into the batter.
Fold in the flour with a spatula until just combined.
Gently stir the fresh cranberries into the batter.
Pour the batter into the cake pan. Bake the cranberry cake for about 60 minutes until it is golden brown. Let the cake cool for half an hour, lift it out, and then cool completely on a wire rack.
Now, make the icing: Mix the butter and cream cheese until smooth, then add the powdered sugar little by little until combined . Spread the frosting over the cake.
Top the icing with white chocolate shavings.