Preheat your oven to 350°F (175°C). Grease and flour the two 9-inch round cake pans.
In a large mixing bowl, sift together the flour, cocoa powder, baking soda, and salt. Set aside.
In another bowl, mix the vegetable oil and granulated sugar until well combined. Add the eggs individually, mixing well after each addition.
Incorporate the buttermilk, red food coloring, and vanilla extract into the wet mixture, stirring until fully combined.
Gradually add the dry ingredients to the wet mixture, mixing on low speed until just combined. Do not overmix.
Add the vinegar and mix briefly to combine.
Divide the batter evenly between the prepared pans and smooth the tops.
Bake for 25-30 minutes, or until a toothpick inserted into the center comes out clean. Allow the cakes to cool in the pans for 10 minutes, then transfer to a cooling rack to cool completely.
While the cakes are cooling, prepare the cream cheese frosting by beating the softened cream cheese and butter together until smooth. Gradually add the powdered sugar and vanilla extract, mixing until well combined and fluffy.
Once the cakes are completely cooled, place one layer on a serving platter. Spread a generous layer of cream cheese frosting on top, then place the second layer on top and frost the top and sides of the cake.
Decorate as desired, and serve.