Preheat the oven to 350 degrees and grease three 6-inch round cake pans.
In a mixing bowl, beat the granulated sugar and 1/2 cup butter until light and fluffy. Add the eggs one at a time, then stir in the vanilla extract and milk.
In a separate bowl, whisk the flour and baking powder together. Add the dry mixture to the wet ingredients and stir until just combined.
Divide the batter into three equal portions. Leave one portion plain, tint the second with yellow food coloring, and tint the third with orange food coloring. Pour each portion into a prepared pan.
Bake the layers for 18 to 20 minutes until a toothpick comes out clean. Cool the cakes in the pans for 10 minutes, then turn them out onto a wire rack to cool completely.
For the frosting, beat the powdered sugar, 1/4 cup butter, and heavy cream until smooth and spreadable.
Place the orange layer on a plate, spread a thin layer of frosting on top, add the yellow layer, and repeat. Finish with the plain layer on top. Frost the sides and top of the cake, then press candy corn pieces around the base.