Whisk together flour, baking powder, baking soda, and salt in a small bowl. Set aside.
Beat egg whites in a glass bowl till stiff peaks form. Set aside.
In a large mixing bowl, beat butter, coconut oil, and sugar with a hand mixer till creamy. Beat in the cream of coconut, egg yolks and vanilla.
Add the dry ingredients and the buttermilk. Beat till just combined.
Gently fold in the stiff egg whites till well incorporated.
Pour batter into a well greased 9x13" cake pan. Bake at 350° for 40-45 minutes or till toothpick inserted in the middle comes out clean. Cool completely.
For frosting:
1. Beat cream cheese and butter in a mixing bowl till smooth and creamy.
2.Beat in coconut extract, salt, powdered sugar, and enough cream of coconut to make a spreadable consistency.
3. Spread frosting over cooled cake and sprinkle with toasted coconut.