Prepare the Cake Batter:
Preheat the oven to 350°F (175°C). Grease and flour two 9-inch round cake pans, or line them with parchment paper for easy removal.
In a medium bowl, whisk together the flour, cocoa powder, baking powder, baking soda, and salt. Set aside.
In a large mixing bowl, combine the buttermilk, oil, eggs, vanilla extract, and sugar. Using an electric mixer, beat until smooth and creamy.
Gradually add the dry ingredients to the wet ingredients, mixing until just combined.
Stir in the hot water, vinegar, and food coloring (if using). The batter will be thin, which is normal.
Bake the Cakes:
Divide the batter evenly between the prepared cake pans.
Bake for 30-35 minutes, or until a toothpick inserted into the center of the cakes comes out clean.
Remove the cakes from the oven and let them cool in the pans for 10 minutes before transferring them to a cooling rack to cool completely.
Make the Frosting:
While the cakes cool, prepare the frosting. In a large mixing bowl, beat the softened butter and cream cheese together until smooth and creamy.
Gradually add the powdered sugar, one cup at a time, mixing well after each addition.
Stir in the vanilla extract and salt. Add the heavy cream, a tablespoon at a time, to reach your desired frosting consistency. If you prefer a thicker frosting, use less cream.
Assemble the Cake:
Once the cakes are completely cooled, place one layer on a serving plate. Spread a generous amount of frosting on top.
Place the second cake layer on top and frost the entire cake, smoothing the frosting with a spatula for a polished finish.
Optionally, decorate with additional frosting, edible glitter, or chocolate shavings for a more luxurious touch.
Serve and Enjoy:
Slice and serve this decadent dessert to your friends and family. The rich, velvety layers are perfect for any occasion, and the bold black hue makes it a striking addition to any dessert table.