Peel and chop 2 large sweet potatoes. Boil until fork-tender (20–25 minutes), drain, mash until smooth, and let cool. Measure out 2 cups.
Preheat oven to 325°F (165°C). Grease and flour a 10-inch bundt or tube pan thoroughly.
In a bowl, whisk together flour, baking powder, baking soda, salt, cinnamon, and nutmeg. Set aside.
In a large bowl, beat softened butter, oil, and sugar on medium speed for 4–5 minutes until pale and fluffy.
Add eggs one at a time, beating well after each. Stir in the vanilla extract.
Mix in cooled mashed sweet potatoes until the batter is smooth and fully blended.
Add dry ingredients in three parts, alternating with milk and sour cream. Start and end with dry mix. Mix just until combined.
Pour batter into the pan, smooth the top, and bake for 75–85 minutes, or until a toothpick comes out clean or with a few moist crumbs.
Let the cake cool in the pan for 15 minutes. Then invert onto a wire rack and cool completely.
Whisk together powdered sugar, milk, vanilla, and cinnamon (if using) until smooth. Drizzle over the cooled cake and let set.