Preheat the oven to 350 degrees F. Sift together flour, baking soda, salt, and cocoa powder into a bowl and set aside. In a large bowl mix the oil, sugar, and buttermilk. Add eggs, food coloring, vinegar, vanilla, water, and mix well. Add the dry ingredients a little bit at a time and mix at low speed until combined. Don't over mix the batter or it will become tough. Line your cupcake pan with paper liners of your choice and use a spoon to scoop the batter into the liners. Bake for about 20 to 30 minutes or until a toothpick comes out clean. Let them cool.
Using an electric mixer, combine the butter and cream cheese until smooth. Mix in the vanilla. Slowly add the sugar while mixing. The frosting will become thicker as you add the sugar. Add as much or as little sugar as you prefer. (It really depends on how sweet you like your frosting to be).
This recipe was provided by a chef, restaurant or culinary professional. It has not been tested for home use.