In a medium-sized mixing bowl or bowl of a stand mixer, mix together sugar, flour, baking powder, baking soda, salt, lemon zest, and lime zest.
Add butter and mix on medium-low speed for three minutes. Because there is so little butter, you'll end up with a very fine crumb texture.
In a small mixing bowl, whisk together eggs, sour cream, oil, and vanilla extract until smooth.
Add the egg mixture to the flour mixture and beat on medium speed until just combined.
Slowly add grenadine and water and mix on low speed until just combined. The batter will be liquid. (Don't worry, you didn't do anything wrong. It's supposed to be that way.)
Fill cupcake liners 3/4 full.
Bake for 14 minutes and then test to see if they are done. They are done when a toothpick comes out without wet batter stuck to it. If they are not done, test again in two minute increments.
When the cupcakes are done, remove them immediately from the tins and leave them on a cooling rack (or just on your counter if you don't own a cooling rack) to cool.
Shirley Temple Frosting Instructions
Beat butter on high speed in the bowl of a stand mixer for about three minutes, until light and fluffy.
Mix in powdered sugar a little bit at a time.
Mix in grenadine and salt.
Spread or pipe onto cooled cupcakes.
Top with cherries and decorate with paper straws.
Notes
I highly recommend making both grenadine and the maraschino cherries from scratch. The store-bought versions of both typically contain lots of red dye and high-fructose corn syrup. When you make them from scratch, you can make them naturally using pomegranate juice.