Serves: 14 cakes1) Preheat the oven to 180C/Gas 4. In a large mixing bowl cream the vegetable oil, butter and sugar until light and fluffy, on medium speed; add the egg yolks 1 at a time, beating until all the yellow disappears.
2) Add the vanilla. Sift together the flour, bicarbonate of soda and salt. Add the flour mixture alternately with the buttermilk to the creamed mixture, beginning and ending with the flour.
3) In a small bowl, beat the egg whites on high speed until stiff peaks form. Gently fold into the cake batter.
4) Fill standard paper-lined muffin tins 3/4 full. Bake for 20 to 25 minutes or until a cocktail stick inserted in centre comes out clean. Leave to cool in the tin for 10 minutes then transfer the cupcakes to wire rack that has been placed over a baking tray.
5) Whilst the cupcakes are still warm, stir together the evaporated milk, sweetened condensed milk and the coconut milk. Using a meat injector needle, inject each cupcake in several different spots with about 15 to 20ml of the mixture.
6) Alternatively, poke several holes in the top of each of the cupcakes with a 0.5cm wooden skewer and then spoon the milk mixture over the cakes.
7) After the milk mixture has been absorbed into the cakes, refrigerate them for at least 2 hours or overnight before icing.
For the buttercream:
1) Preheat the oven to 220C/Gas 7. To make the dulce de leche, pour the sweetened condensed milk into a glass pie plate and cover with foil. Place in a large roasting pan so the pie plate can sit flat.
2) Pour hot water into the roasting pan to a depth of about halfway up the pie plate. Place in the oven and bake for 1 hour 15 minutes. Remove from the oven and allow to cool. Stir until smooth.
3) Place the egg yolks in a medium mixing bowl. Stir the sugar, cornflour and salt together in a small, heavy saucepan. Whisk in the water first, then the dulce de leche and bring to the boil over a medium heat. Boil for 1 minute, whisking constantly. Remove from the heat.
4) Gradually whisk the dulce de leche mixture into the 2 egg yolks. Stir in the vanilla. Strain through a wire mesh sieve into a small bowl and set aside to cool completely.
5) Beat the butter on high speed in a large mixing bowl until light and fluffy. Beat in the cooled dulce de leche mixture. Beat in the icing sugar until smooth and spreadable.
6) Ice each cupcake with a generous amount of dulce de leche buttercream. Refrigerate any remaining buttercream for another use. Sprinkle each cupcake with desiccated coconut.