How to Make It
Prepare the Cake Layer: Preheat oven to 350°F. Grease and flour sides and bottom of a 13- x 9-inch baking pan.
Toss together carrots and 1⁄2 cup of the granulated sugar in a bowl. Let stand 15 minutes. Pour mixture through a wire-mesh strainer over a bowl, pressing on solids in strainer; discard liquid. Set shredded carrots aside.
Spread sweetened shredded coconut in a single layer on half of a large baking sheet; spread unsweetened flaked coconut in a single layer on other half. (Keep shredded and flaked coconut separated on baking sheet.) Bake in preheated oven until unsweetened flakes are golden brown, about 5 minutes (sweetened shredded coconut will be only slightly browned). Cool completely, about 10 minutes. Reserve unsweetened flaked coconut for garnish. Reduce oven temperature to 325°F.
Whisk together flour, baking powder, cinnamon, salt, and baking soda.
Beat butter with an electric mixer on medium speed until creamy, about 1 minute. Add brown sugar and remaining 3⁄4 cup granulated sugar, and beat until light and fluffy, about 3 minutes. Add eggs, 1 at a time, beating well after each addition (mixture may look broken). Beat in vanilla. Add flour mixture; beat on low speed until just combined, 1 to 2 minutes. Stir in shredded carrots, shredded coconut, walnuts, and raisins.
Spread batter in prepared pan, smoothing top. Bake at 325°F until a wooden pick inserted in the center comes out clean, 40 to 45 minutes. Transfer pan to a wire rack, and cool completely, about 1 hour.
Meanwhile, prepare the Coconut Buttercream: Whisk together coconut milk, cornstarch, and salt in a saucepan until completely combined and smooth. Bring mixture to a boil over medium, stirring often. Boil, stirring constantly, until mixture thickens, about 2 minutes. Scrape mixture onto a plate, and cover surface with plastic wrap. Cool completely, about 30 minutes (or about 20 minutes in the refrigerator).
Beat butter with an electric mixer on medium speed until creamy, 1 to 2 minutes. Add powdered sugar; beat on medium-low speed until smooth, about 2 minutes. Beat in extracts. Add coconut milk mixture, a little at a time, beating well after each addition. Increase speed to medium-high, and beat until light and fluffy, 2 to 3 minutes. Spread buttercream over top of cooled cake, and garnish with reserved toasted flaked coconut and carrot curls.