Preheat oven to 350 degrees F. Prepare muffin pans by lightly greasing with oil (butter), spraying with non-stick spray, or lining with cupcake liners. Spread parchment paper over a baking sheet pan and place muffin pans on top of covered sheet pan.
Cupcake Preparation: In a large bowl, sift together flour, cocoa, baking powder, baking soda, and salt, then set aside. Using a mixer, cream together sugar and butter. Add eggs, and mix until well blended. Gradually add flour mixture and mix well. In a small bowl, combine buttermilk, food coloring, vanilla, and vinegar. Combine liquid and dry ingredients just to incorporate, don't overmix the batter. Beat on medium-high speed until batter is smooth.
Spoon batter into muffin pans. Bake 16 to 18 minutes or until wooden toothpick inserted in center comes out clean. Let cupcakes cool in pans on wire rack 5 minutes then remove cupcakes from pans and cool completely on wire racks.
Icing Preparation: Beat butter and cream cheese at medium speed with a stand or hand mixer until creamy. Gradually add sugar and vanilla, beating until well blended. Spread frosting over cooled cupcakes.