Preheat oven to 350°F. Line 18 cups of a standard size muffin pan with liners. Set aside.
To Make Cupcakes: In a medium bowl, use a whisk to sift together flour, baking powder and salt.
Using an electric mixer, in a large separate bowl beat softened butter on medium-high speed for 2 minutes or just until fluffy. Add granulated sugar, beating until fluffy and combined.
Add the eggs, beat well. Lower the speed of the mixer adding the sifted dry ingredients alternately with the buttermilk beginning and ending with flour. Add vanilla extract, beat just until evenly distributed.
Use a scoop to divide the cupcake batter evenly between each well filling about 2/3 full.
Bake cupcakes for 18-20 minutes or just until the top springs back when touched or a toothpick inserted into the center comes back clean. Cool in the pan for 5 minutes, then remove to a wire rack to cool completely.
To Make Buttercream Icing: In a large bowl using an electric mixer, cream the butter for 2 minutes. Lower the speed of the mixer gradually adding powdered sugar. Add vanilla beating until combined. Add heavy cream 1 tablespoon at a time until the icing is smooth.
If Using Buttercream: Use an ice cream scoop to top each cupcake. Warm chocolate fudge sauce in the microwave just until drizzle consistency (not hot). Drizzle the buttercream with chocolate and decorate with sprinkles while chocolate is still wet, topping with a cherry and broken sugar cone pieces. Place into a cupcake keeper and chill until serving.
If Using Ice Cream: Use an ice cream scoop to top each cupcake. Warm chocolate in the microwave just until drizzle consistency (not hot). Drizzle the ice cream with chocolate and decorate with sprinkles while chocolate is still wet, topping with a cherry broken sugar cone pieces. Place into the freezer until serving.