To toast the walnuts, preheat the oven to 350 degrees F and line a baking sheet with parchment paper. Spread the walnuts out on the baking sheet and bake for 6-8 minutes, or until the walnuts start to darken. Let the walnuts cool and then coarsely chop them.
Preheat the oven to 350 degrees F. Line the bottom of an 8-inch square baking pan with parchment paper and lightly grease the sides of the pan.
In small bowl, sift the flour, baking powder, baking soda, cinnamon, nutmeg and salt.
In a large mixing bowl, beat the eggs and brown sugar until combined. Add the milk, vanilla extract, orange zest and melted butter. Add the flour mixture and carrot puree and beat just until combined. Do not over-beat. Using a rubber spatula, stir in the walnuts and raisins.
Pour the batter into the prepared pan and use the rubber spatula to smooth the top. Bake for 45-50 minutes or until lightly browned and a toothpick inserted into the center comes out clean. Let the cake cool completely in the pan on a wire rack, then carefully invert it onto a serving plate.
To make the frosting, beat all the ingredients in a mixing bowl until combined. Spread it onto the top and sides of the cake.