Sift the flour, cocoa powder and baking powder into a bowl. Add the sugar, butter, eggs, vanilla essence and milk and whisk until they are evenly combined.
Grease and line the base of a 1.8 litre (3 pint) ring cake tin. Turn the mixture into the tin and level the surface. Bake in a preheated oven, 180°C (350°F), Gas Mark 4, for 35 minutes or until just firm to the touch. Use a palette knife to loosen the cake from the side of the tin, then invert the cake on to a wire rack and leave to cool.
Heat the chocolate gently in a heavy-based pan with the milk until it has melted, stirring frequently. Stir in the butter. Beat in the icing sugar and leave the mixture to cool slightly.
Split the cake horizontally into 3 layers. Beat the icing again until it has a slightly fudge-like texture. Use a little icing to sandwich the layers together. Spread the remaining icing over the top and sides of the cake, swirling it with a palette knife. Decorate with the walnut halves and dust with icing sugar.