3/4 pound (3 sticks) unsalted butter, at room temperature, plus more for greasing the pans
2 cups sugar
5 extra-large eggs, at room temperature
1 teaspoon pure almond extract
1 ½ teaspoons pure vanilla extract
3 cups all-purpose flour, plus more for dusting the pans
½ teaspoon kosher salt
1 teaspoon baking powder
½ teaspoon baking soda
1 cup milk
5 ounces sweetened shredded coconut
For the frosting:
2 sticks unsalted butter, at room temperature
1 pound cream cheese, at room temperature
3/4 teaspoon pure vanilla extract
1/4 teaspoon pure almond extract
1 pound sifted, confectioners' sugar
6 ounces sweetened shredded coconut
Preheat the oven to 350 degrees F.
Grease 2 (9-inch) round cake pans, and dust lightly with flour.
In the bowl with a paddle attachment, cream the butter and sugar on medium-high speed for 3 to 5 minutes, until light yellow and fluffy. Crack the eggs into a small bowl. With the mixer on medium speed, add the eggs 1 at a time, scraping down the bowl during mixing. Mix in the vanilla and almond extracts.
In a separate bowl, sift together the flour, baking powder, baking soda and salt. With the mixer on low speed, add the dry ingredients and the milk to the batter in 3 parts, beginning and ending with dry ingredients. Mix until just combined. Fold in (do not use mixer) the 4 ounces of coconut with a rubber spatula.
Pour the batter evenly into the 2 pans and smooth the top with a knife. Bake in the center of the oven for 40 to 45 minutes, do cake tester with toothpick, if comes out clean then cake is done. Cool on a baking rack for 40 minutes, then turn the cakes out onto a baking rack to finish cooling.
For the frosting, combine the cream cheese, butter, vanilla and almond extract on low speed. Add the confectioners' sugar and mix until just smooth
To assemble, place 1 layer on a flat serving plate, top side down, and spread with frosting. Place the second layer on top, top side up, and frost the top and sides. sprinkle the top with coconut and lightly press more coconut onto the sides.