Preheat the oven to 350°F (175°C) and grease and flour two 9-inch round cake pans.
In a large mixing bowl, cream together the butter and sugar until light and fluffy.
Add the eggs one at a time, mixing well after each addition. Stir in the buttermilk and vanilla extract.
In a separate bowl, combine the flour, baking powder, baking soda, and salt. Gradually mix this dry mixture into the wet ingredients until just combined.
Fold in the shredded coconut and raspberries gently so that they are evenly distributed in the batter.
Pour the batter evenly into the prepared pans and smooth the tops with a spatula.
Bake for 25–30 minutes, or until a toothpick comes out clean when inserted into the center of the cakes.
Allow the cakes to cool in the pans for about 10 minutes, then transfer them to wire racks to cool completely.
For the frosting, beat together the butter and powdered sugar until smooth. Add raspberry puree and mix well.
Once the cakes are cool, spread a layer of frosting on top of one cake, place the second cake on top, and cover the entire cake with frosting. Garnish with extra raspberries and shredded coconut if desired.