Preheat the oven to 180C/350F/gas 4.
Grease the cake tins with butter and line with baking paper.
Sift the flour, baking powder, bicarbonate of soda, salt and spices into a large mixing bowl, then stir in the sugars.
Place the oil, eggs, 3 tbsp reserved pineapple juice and vanilla in a small bowl and mix thoroughly.
Add the wet mixture to the dry ingredients and fold in thoroughly.
Add the carrots, desiccated coconut, walnuts and chopped pineapple and stir in thoroughly.
Divide the batter equally between the prepared tins.
Place in the oven and bake for 40-45 minutes until golden, risen and springy to the touch.
Remove from the oven and leave in the tins for 10 minutes before turning out onto the cooling rack and leaving to cool completely.
To make the icing, place the butter and icing sugar in the medium mixing bowl and beat together with the electric hand whisk until smooth.
Add the cream cheese and lemon juice and beat again until fully combined and smooth. (Alternatively, whizz everything in a food processor.)
Spread a third of the icing over one of the cooled sponges and place the second sponge over the icing.
Spread the rest of the icing on top of the cake and all over the sides.
Using the edge of a palette knife smooth the icing, making sure that it is spread evenly enough so that the sponge doesn’t show through.
Put the cake in the fridge for an hour.
Remove from the fridge 30 minutes before serving and decorate with edible flowers.