Preheat the oven to 350°F. Beat the butter and sugar in an electric mixer for 3 minutes on medium speed until light and fluffy.
Add the eggs, one at a time, beating until each is fully incorporated. Be sure to scrape down the sides of the bowl to ensure even mixing.
In a large bowl, sift together the cake flour, cocoa powder, baking soda, baking powder, and salt. In another bowl whisk together the buttermilk, vinegar, vanilla extract, and red food coloring *(it will fizz!).
Add a fourth of the dry ingredients and mix, then add a third of the wet. Continue adding in a dry, wet, dry pattern, ending with the dry ingredients.
Scoop into cupcake papers (I use an ice-cream scoop), about 1/2 to 3/4 of the way full. Bake for 18-22 minutes or until a toothpick comes out clean. Rotate the pan after the first 15 minutes of baking to ensure even baking.
Allow to cool for one minute in the pan then transfer to a wire rack to cool completely. Makes about 2 1/2 dozen cupcakes.
Cream the butter and cream cheese together, about 3 minutes. Scrape down the sides and bottom of the bowl to ensure even mixing.
Add the vanilla extract and mix.
Add the powdered sugar, continually taste to get to desired sweetness. Pipe onto cooled cupcakes.