Grease and line a baking tray (about 20x30 cm). Preheat the oven to 180°C.
Melt the butter then set aside. When it has cooled, add the vanilla essence, sugar and eggs. Mix with a wooden spoon until smooth.
Meanwhile, grate the carrots.
Sift the flour, salt and spices into the butter mixture and mix gently. When the batter is smooth, add the coconut and grated carrot.
Tip the batter into the baking pan and spread it out evenly.
Bake for about 35-40 minutes. It is ready, when an inserted skewer comes out clean.
Allow it to cool slightly in the tin, then transfer the cake to a grid.
Meanwhile, lightly toast the desiccated coconut in a frying pan (without any oil).
When the cake is completely cool, mix the coconut milk with enough icing sugar to create a spreadable paste. Spread this on top of the cake, then scatter the toasted coconut on top.
Let it set, then cut the cake into slices or squares.