Stir the butter until light and creamy.
Add the sugar and vanilla and stir again until well combined. (It will not be smooth and creamy at this point but instead thick with a sandy texture.)
Add approximately ⅓ (doesn’t have to be exact) of the buttermilk and stir to combine. Then add approximately ⅓ of the flour and stir again. Repeat x 2 until all of the buttermilk and flour have been added.
Add the baking soda, baking powder and salt and stir to combine.
Add egg whites, one at a time and whisk vigorously for 30 seconds after each addition. Don’t cheat! I like to set a timer. After the egg whites have been whisked in the batter will be smooth and satiny.
Add green food coloring, stirring after each drop until the desired shade of green is reached. (I used 5-6 drops.)
Pour the batter into the prepared pan and smooth the top to an even layer with an offset knife or spatula.
Pick the pan up, lift it a few inches above the counter and let it drop. Repeat this 3-4 times to bring any air bubbles to the surface. Let the pan sit for a minute or two then proceed with the next step.
Bake for 35 minutes then pull up the foil around the edges of the pan to prevent the crust from getting too brown. Bake for an additional 10-15 minutes or until a toothpick inserted into the center comes out clean OR (best way to determine doneness) until an instant thermometer inserted into the center of the cake registers 200-210˚F.
Cool for 20 minutes in the pan, then invert the cake onto a cooling rack. (The flat bottom of the cake now becomes the top.)
Cool the cake completely before icing with the buttercream. While the cake is cooling, make the cream cheese buttercream (directions below).