Place your can of coconut milk in the fridge the night before you plan on making your frosting.
Heat oven to 350°F. Lightly coat the inside of your cake pans with coconut or other oil, and line the sides and bottom with parchment paper. (See note below for tips.)
Grate your carrots using a handheld grater or the grating attachment on your food processor and transfer them to a medium bowl. Chop your walnuts by hand or by pulsing a few times in a food processor and add these to the bowl of grated carrots, along with the pineapple and its juice, the shredded coconut, and raisins.
In a medium bowl, combine the flax and water and set it aside to thicken.
Measure your plant milk into a liquid measuring cup and stir in the apple cider vinegar. Set this aside to curdle.
Whisk the oat flour, coconut sugar, cinnamon, ginger, baking soda, and salt together in a large bowl and set it aside.
Give the flax mixture a stir. Then add the milk and vinegar mixture, applesauce, molasses, and vanilla and stir to combine. Add this mixture to the dry ingredients and stir until smooth.
Fold in the grated carrots, pineapple, walnuts, coconut, and raisins. Batter will be thick!
Pour batter into your lined baking pan. Spread batter to the edges of the pan and smooth into an even layer.
Bake 40-45 minutes or until the center springs back when lightly touched. Cool the layers (in the pan) on a wire rack for 30 minutes. Then, invert the layers onto the rack (removing the pan) to cool completely.
While the cake bakes, make your frosting.
Place the coconut sugar into your spice grinder or high speed blender (you may have to do this in two batches depending on the size of your spice grinder). Process for about 10 seconds, until it becomes a fine powder. Set it aside with the lid on so the sugar dust can settle.
Open your can of coconut milk and carefully scoop out 125g (½ cup) of the thick coconut cream. Add this to a stand mixer along with the cream cheese and beat on medium for 3 minutes.
Stop the mixer and use a rubber spatula to scrape down the sides.
Add the powdered coconut sugar, vanilla, lemon juice, xanthan gum, and salt and mix on medium-high for three minutes.
Stop the mixer and use a rubber spatula to scrape down the sides again.
Beat on medium-high for another minute.
Scrape down the sides again. Cover the bowl of frosting and refrigerate it while the cake cools.
Cool the cake completely before frosting it.