Preheat oven to 350°. Spray two 8-inch cake pans with cooking spray.
In the bowl of a stand mixer, cream together butter and sugar until light and fluffy. Add in eggs, one at a time and stirring until incorporated. Mix in vanilla, red food coloring, and cocoa powder. With mixer on low, add in flour in three additions alternating with buttermilk, beating each addition until just incorporated.
In a small bowl combine salt, baking soda, vinegar and water, holding over the mixer bowl as it foams. Gently blend vinegar mixture into the cake batter (do not beat).
Divide batter into prepared cake pans and bake for 30 minutes or until a toothpick inserted into the center comes out clean.
Let cakes cool completely before frosting.
To make frosting, beat the cream cheese and butter at medium-high speed in a stand mixer until smooth. Beat in extract well combined.
Add powdered sugar; beat at medium-low speed until most of the sugar is moistened, about 1 minute. Scrape down the bowl and add heavy cream, beat medium speed until incorporated. Increase speed to medium-high and beat for about 4 minutes, scraping down bowl once or twice.
To assemble the cake, place one layer on a serving plate or cake stand. Spread an even layer of the cream cheese frosting over the top of the cake. Carefully place second cake on top. Using an offset spatula, frost the top and sides of the cake until fully covered. Slice and serve.