Preheat the oven to 350 degrees F. Line 12 cupcake cups with paper liners.
Separate the eggs. Put the whites in a mixing bowl and the yolks in a small bowl. Bring them to room temperature. You may want to do this ahead of time.
Sift the cake flour and then stir in the baking powder and salt and set aside.
With a clean mixer, whip the egg whites to soft peaks and set aside.
In a large mixing bowl, using the same mixer you used to beat the whites, beat the butter until creamy. Gradually add the sugar and continue to beat for until fluffy and light, scraping sides of the bowl. Add the egg yolks, one at a time, using lowest speed of mixer. Beat in the extract.
With a big mixing spoon or heavy duty scraper, add the dry ingredients alternately with the sour cream, stirring until mixed. Scrape the sides of the bowl and beat with the electric mixer for about 1 minute or until smooth. With the spoon or scraper, fold the egg whites into the batter.
Divide the batter evenly among the cupcake cups and bake for about 20 minutes or until the cakes appear set. These cakes do not brown very much – just a tiny bit around the rim. The tops also look pretty wet even when the cupcakes are done, so bake just until a toothpick inserted comes out clean.
Let the cakes cool completely. While warm, they may seem a little flimsy, but they will firm up a bit as they cool.
To make the frosting, beat the butter until creamy. Gradually beat in the powdered sugar. Add the cream and vanilla and beat until light and fluffy.