Preheat oven to 350 degrees F (175 degrees C). Grease two 12 cup muffin pans or line with 20 paper baking cups.
In a large bowl, beat the butter and sugar with an electric mixer until light and fluffy. Mix in the eggs, mayonnaise, oil, buttermilk, red food coloring and vanilla. Stir in the baking soda and vinegar. Combine the flour, cocoa powder and salt; stir into the batter just until blended. Spoon the batter into the prepared cups, dividing evenly.
Bake in the preheated oven until the tops spring back when lightly pressed, 20 to 25 minutes. Cool in the pan set over a wire rack. When cool, arrange the cupcakes on a serving platter.
For the FROSTING.
Whisk together the flour and the milk. Heat in a small sauce pan on medium heat.Whisk continuously until it starts to thicken. Let it cook, while stirring, until you can start to see the bottom of the pan. Smash any flour lumps with a rubber spatula to keep mixture smooth Keep cooking mixture until it resembles thick pudding, almost a paste-like consistency. Now here is where it gets exciting Beat on med-high until it comes together and becomes light and fluffy. It can take anywhere from 5-10 minutes.
It will transform from that sloppy mess into something gorgeous, fluffy, and incredibly light and silky. If the time has passed and it still looks like a hot mess, just keep on beating and it should eventually come together. Feel the mixture between two fingers to see if the sugar granules have dissolved; if not, just beat a little longer. Now add the mountain dew/7up and stir again. Put it in the fridge for at least 30 minute Than it will be ready decorate your delicious cup cakes. It is such a delight, you won't want to look any further for recipes.