Preheat the oven to 350 degrees F. Butter and line the bottom of 2 (8-inch) cake pans.
In a large bowl, mix together the flour, sugars, cocoa, baking powder, baking soda and salt. In another bowl or wide-necked measuring cup whisk together the eggs, sour cream and vanilla until blended. Using a standing or handheld electric mixer, beat together the melted butter and corn oil until just blended (you'll need another large bowl for this is using the hand mixer; the standing mixer comes with its own bowl), then beat in the water. Add the dry ingredients all at once and mix together on a slow speed. Add the egg mixture, and mix again until everything is blended and then pour into the prepared tins. And actually, you could easily do this manually; I just like my toys and find the stand mixer a comforting presence in itself.
Bake the cakes for 45 to 50 minutes, or until a cake-tester comes out clean. Cool the cakes in their pans on a wire rack for 15 minutes, and then turn the cakes out on the rack to cool completely.
Melt the chocolate in the microwave - 2 to 3 minutes on medium should do it - or in a bowl sitting over a pan of simmering water, and let cool slightly.
In another bowl beat the butter until it's soft and creamy (again, I use the stand mixer here) and then add the sifted confectioners' sugar and beat again until everything's light and fluffy. I know sifting is a pain, the 1 job in the kitchen I really hate, but you have to do it or the icing will be unsoothingly lumpy. Then gently add the vanilla and chocolate and mix together until everything is glossy and smooth.
Sandwich the middle of the cake with about a quarter of the icing, and then ice the top and sides, too, spreading and smoothing with a rubber spatula.
Recipe courtesy of Nigella Lawson