Preheat oven to 350°. Grease two 9 inch round pans and line with parchment or line 24 cupcake cups with paper liners.
Sift together flour, baking soda, baking powder, cocoa. You want to remove any lumps, because this batter just gets stirred rather than beaten. Stir in the sugar.
In a second bowl, mix the buttermilk, oil, and eggs with a handheld or stand mixer until well mixed. Stir in the food coloring, vinegar and vanilla.
Add the dry ingredients slowly and mix until fully incorporated. Don’t over-beat or you’ll risk toughening up the gluten in the flour.
Split batter between the pans. Bake for 20 to 25 minutes or until cakes spring back when touched. If baking cupcakes, start checking for doneness at 20 minutes. Allow cake to
Cool in the pan. Once cool, turn cake out of pan and trim top if it is rounded.
Have cream cheese and butter at room temperature. With paddle attachment of a stand mixer or hand mixer, mix butter and cream cheese together. Slowly add confectioners; sugar. Add vanilla last and mix until fluffy.