Preheat your oven to 350F. Lightly grease two 8 or 9 inch round cake pans with removable bottoms. Line the bottoms of the cake pans with a round piece of parchment, then dust the pans lightly with flour.
Combine the ground flax seed with 3 tablespoons of water and set them aside.
Whisk together the flour, baking powder, baking soda, cardamom, cloves, nutmeg, and salt in a large mixing bowl.
In another roomy mixing bowl, combine the oil, brown and cane sugars, vanilla, applesauce, and the flax/water mixture. Whisk these wet ingredients well, then add them to your dry ingredients. Use a spatula to fold the batter together. When the batter is almost mixed (a few streaks of flour are OK at this point), add the grated carrot and nuts/raisins if using to the batter. Continue folding it until it's just entirely combined and the carrots are distributed evenly. Try not to over-mix the batter.
Divide the batter into your two prepared cake pans. Bake for 45-50 minutes, rotating the pans once halfway through baking. When a toothpick inserted into the cakes emerges clean and the tops are firm, they're ready. They'll be a deep golden brown. Remove the cakes from their pans and set them on a cooling rack to cool for at least 2 hours, so that they're completely cool before frosting.
To prepare the frosting, place the butter and cream cheese in a stand mixer fitted with the paddle attachment. Mix on medium speed for 5 minutes, or until the butter and cream cheese are very fluffy. Stop the mixer, then add the sugar. Cover the mixer with a tea towel. Mix the frosting on low speed for 2 minutes. Then, remove the tea towel and beat on medium speed for another 4-5 minutes, or until the frosting is very, very fluffy again. Beat in the white vinegar, then stop the mixer.
Frost your cake! You can trim the tops and sides of the cakes to make them even for frosting if you wish. (If you do this, save the scraps for crumbling onto fruit, vegan yogurt, or ice cream, or just for snacking.) Place one layer of cake onto a cake stand and cover the top with frosting. Place the other layer on top, then proceed to frost the tops and sides with straight and offset spatulas (or a butter knife), maintaining a thin layer of frosting to start with (according to Coral Lee's carrot cake recipe, this is called a "crumb coat"). If you have time, refrigerate the cake after the crumb coat application for 20-30 minutes. Then, use the rest of the frosting to cover the entire cake, making some nice swirls as you go. Make any additional decorations you like, then slice and enjoy your cake.