I tried the code listed at Using PIL to make all white pixels transparent to convert some .ico files to .png images with transparent background.
It doesn't work on all .ico images, some time it just outputs an image with black background.
Sample .ico files can be located here