Preheat oven to 350 degrees. Prepare three 6-inch round cake pans with nonstick baking spray or coat well with shortening and flour, removing all excess flour.
Cream together butter until light and fluffy with an electric mixer on medium speed. Slowly add sugar one cup at a time, making sure to fully incorporate each cup before adding the next.
Add the egg whites, mixing thoroughly, then add the whole eggs one at a time until fully incorporated.
Sift together flour, baking powder, and salt. Pour the milk and vanilla into a measuring cup and gently stir together.
Begin adding the dry ingredients to the sugar/butter mixture alternately with milk mixture, beginning and ending with the dry ingredients.
Gently stir all ingredients until well combined. Stop mixer and scrape down sides and bottom of bowl, making sure all ingredients are incorporated.
Evenly distribute cake batter between cake pans and place pans into the oven. Bake for 25-30 minutes, or until a toothpick or cake tester inserted in the center comes out clean. Remove and allow to cool slightly in the cake pans for about 5 minutes, then cool completely on a wire rack.
Frost cake as desired.