Preheat the oven to 350 degrees. Butter and flour three 9-inch round cake pans.
In the bowl of an electric mixer fitted with the paddle attachment, cream the butter and sugar on high speed until light and fluffy, about 5 minutes. With the mixer on low speed, add the eggs, one at a time, scraping down the bowl after each addition. Add the vanilla and almond extracts, and mix until just incorporated.
In a separate bowl sift together the flour, baking powder, baking soda, and salt. In three parts, alternately add the flour mixture and the buttermilk to the batter, beginning and ending with the flour mixture. Mix until just combined. Fold in 7 ounces of the coconut.
Divide the batter evenly among the three pans. Bake, rotating the pans halfway until golden brown and a cake tester inserted in the center comes out clean, about 25 to 35 minutes.
Transfer the pans to a wire rack. Once the cakes are cooled, invert them onto the racks, then reinvert, top side up. Cool completely. While the cakes are cooling, make the icing (recipe below).
To assemble the cake, place the first layer on a serving platter. Using an offset spatula, spread the top with a 1/4 inch of icing. Top with the second layer, another ¼ inch of icing, and then the third layer. Ice the sides and top of the cake with the remaining icing, and cover with the remaining coconut.