Preheat the oven to 350˚F. Grease a 9×9-inch pan with butter and set aside.
Using an electric hand mixer, cream the butter and sugar together in a large bowl until pale and fluffy, about 3 – 5 minutes. In a separate bowl, sift together the flour, baking powder and salt. In another bowl, combine the milk and vanilla extract. Add the dry ingredients to the creamed butter in 3 additions, alternating with the milk mixture and beating in between each addition, until just combined. Stir in the grated chocolate. Set aside.
In a separate bowl, beat the egg whites until stiff. Using a rubber spatula, gently fold them into the batter until just combined. Pour the batter into your prepared baking pan and bake in the preheated oven for 15-20 minutes, or until a toothpick inserted comes out clean. Transfer the cake to a wire rack and allow to cool completely.
While the cake is cooling, beat together the icing ingredients until well combined. Once the cake has cooled completely, use an offset spatula to spread the icing evenly over the top. Transfer the cake to the refrigerator to allow the icing to set.
For the final layer, melt the chocolate in a heat safe bowl placed over a pot of simmering water, stirring frequently. Once melted, stir in the butter until melted and combined. Allow the chocolate to cool slightly and then use an offset spatula to spread evenly over the icing. Place the cake back in the fridge to allow the topping to set and until ready to serve.
When ready to serve, cut the cake into squares and transfer to a platter. Store in the fridge.
The grating of the chocolate can be, well, kind of grating. If you don’t have the patience, go ahead and use mini chocolate chips.