01 - Preheat the oven to 350°F. Grease and line two 9-inch round cake pans with parchment paper.
02 - In a large bowl, sift together flour, sugar, baking soda, salt, and cocoa powder.
03 - In another bowl, whisk together oil, buttermilk, eggs, food coloring, vanilla, and vinegar until smooth.
04 - Gradually add the wet ingredients to the dry ingredients, mixing until just combined. Do not overmix.
05 - Divide the batter evenly between the prepared pans. Bake for 28-32 minutes, or until a toothpick inserted in the center comes out clean.
06 - Let cakes cool in pans for 10 minutes, then turn out onto wire racks to cool completely.
07 - In a large bowl, beat the cream cheese and butter together until creamy and smooth. Add vanilla and salt. Gradually beat in powdered sugar until fluffy and spreadable.
08 - Level the cake layers if needed. Place one layer on a serving plate and spread with frosting. Top with the second layer and frost the top and sides of the cake.
09 - Chill the cake for at least 30 minutes before slicing for cleaner layers.