Preheat oven to 350°F. Grease two 9-inch cake pans with cooking spray.
Make toasted coconut. Spread 1 cup shredded coconut flakes (sweetened or unsweetened coconut) on a cookie sheet.
Bake for 6-7 minutes, watching closely, and toss often. Once golden brown, pull them out right away.
Whisk flour, baking powder, baking soda, and salt in a small bowl. Set aside.
Beat 4 egg whites in a glass bowl until stiff peaks form. Set aside.
In a large mixing bowl, beat butter, coconut oil, and sugar till creamy.
Beat in cream of coconut, egg yolks, and vanilla.
Add the dry ingredients and the buttermilk. Beat until just combined.
Gently fold in the stiff egg whites until well incorporated.
Pour batter evenly into prepared cake pans. Bake for 30-35 minutes or until a toothpick comes out clean.