Preheat oven to 350 °f (175 °c) and place rack in center of oven.
Butter two - 9 inch (23 cm) round cake pans and line the bottoms of the pans with parchment paper. Set aside.
For the Red Velvet Cake: In a mixing bowl sift together the flour, salt, and cocoa powder. Set aside.
In bowl of your electric mixer, or with a hand mixer, beat the butter until soft (about 1-2 minutes).
Add the sugar and beat until light and fluffy (about 2-3 minutes).
Add the eggs, one at a time, beating well after each addition. Scrape down the sides of the bowl.
Add the vanilla extract and beat until combined.
In a measuring cup whisk the buttermilk with the red food colouring.
With the mixer on low speed, alternately add the flour mixture and buttermilk to the butter mixture, in three additions, beginning and ending with the flour.
In a small cup combine the vinegar and baking soda. Allow the mixture to fizz and then quickly fold into the cake batter.
Working quickly, divide the batter evenly between the two prepared pans and smooth the tops with an offset spatula or the back of a spoon.
Bake in the preheated oven for approximately 25 - 30 minutes, or until a toothpick inserted in the centre of the cakes comes out clean.
Cool the cakes in their pans on a wire rack for 10 minutes.
Place a wire rack on top of the cake pan and invert, lifting off the pan.
Once the cakes have completely cooled, wrap in plastic and place the cake layers in the refrigerator for at least an hour (or overnight).
This is done to make filling and frosting the cakes easier.
For the Cream Cheese Frosting: In the bowl of your electric mixer, or with a hand mixer, beat the cream cheese and mascarpone cheese until smooth.
Add the vanilla and confectioner’s sugar and beat until smooth.
Using the whisk attachment, gradually add the heavy cream* (See Tips) and whip until the frosting is thick enough to spread.
Add more sugar or cream as needed to get the right consistency.
Assemble: With a serrated knife, cut each cake layer in half, horizontally.
You will now have four cake layers.
Place one of the cake layers, top of the cake facing down, onto your serving platter. Spread the cake layer with a layer of frosting.
Place another layer of cake on top of the frosting and continue to frost and stack the cake layers. Frost the top and sides of the cake.