What about IcoFX; http://icofx.ro/

I use it in combination with Paint.NET. The Paint .NET ico plugin automatically resizes the image that's saved as an icon. IcoFX has the ability to individually set the image for each size (16x16, 24x24, 32x32.... 256x256)