Preheat the oven and prepare the tins: Preheat the oven to 170°C. Line the bottoms of two 22 cm round cake tins with parchment paper and lightly grease the sides with butter.
Cream the butter and sugar: In a large mixing bowl, use an electric whisk to cream together the butter and demerara sugar until light and fluffy.
Add the eggs and coffee: Beat in the eggs one at a time until fully incorporated. Mix in the cooled coffee. The mixture might look curdled, but it will come together when you add the flour.
Combine dry ingredients and walnuts: Sift the self-raising flour and baking powder into the mixture. Add the chopped walnuts and milk. Gently fold everything together until the flour is fully combined, being careful not to overmix.
Bake the cakes: Divide the batter evenly between the two prepared cake tins. Bake in the preheated oven for about 18 minutes, or until the tops spring back when gently pressed and a toothpick inserted into the center comes out with a few moist crumbs.
Cool the cakes: Allow the cakes to cool in the tins on a cooling rack for about 10 minutes before turning them out to cool completely.
Make the frosting: Whip the butter and cream cheese together until very light and fluffy. Gradually sift in the icing sugar while mixing on low speed to avoid a sugar cloud. Slowly pour in the cooled coffee and continue whipping until the frosting is silky smooth and creamy.
Assemble the cake: Spread half of the frosting on the top of one of the cooled cakes. Place the second cake on top and spread the remaining frosting over it. Sprinkle the chopped walnuts around the edge of the cake.