Preheat the oven to 350°F (175°C). Grease two 9-inch round pans and line the bottoms with parchment.
Whisk the cake flour, sugar, baking soda, cocoa powder, and salt in a large bowl.
In another bowl, whisk the eggs, vegetable oil, buttermilk, food coloring, vanilla, and vinegar until smooth.
Pour the wet ingredients into the dry ingredients and mix just until no dry streaks remain.
Divide the batter evenly between the two pans and smooth the tops.
Bake for 25–30 minutes, until the centers are set and a toothpick comes out clean or with a few moist crumbs.
Cool in the pans for 10–15 minutes, then turn out onto a wire rack and cool completely.
Beat the softened cream cheese and butter until smooth and creamy.
Add the vanilla, then gradually beat in the powdered sugar until the frosting is smooth and spreadable.
Place one cake layer on a serving plate and spread frosting over the top.
Add the second layer and frost the top and sides.