Preheat the oven to 350 degrees.
In a mixing bowl, combine the ingredients for the cake except for the shredded carrots, and blend until smooth.
Fold the shredded carrots into the batter.
Place the batter into two even sections in two different well-greased cake pans, and bake for 25-30 minutes or until completely cooked through.
Let the cakes cool completely.
In a mixing bowl, combine the ingredients for the icing except for the chopped walnuts. Beat on high until smooth, creamy and fluffy.
Turn the cake pans upside down, and remove the cakes from them.
Place one layer of cake on a plate or serving dish, and top with a generous layer of the icing.
Add the second layer of cake on top of the iced layer, and use the rest of the icing to cover the entire cake in an even layer.
Top with chopped walnuts and serve immediately or refrigerate before serving if desired.