También funciona sin la ayuda de TIcon ...
Código Delphi
[-]MainForm.ImageList1.GetIcon(0, TForm(MainForm).Icon);
lo que sí que me pasa es que entiendo que los iconos que se muestran son de 16x16 bits, y no sé si 256 colores o color de 32 bits. En cualquier caso, al reemplazar el icono del Form con el método arriba indicado, la imagen del icono en el form se 'distorsiona' y bien aparece con líneas en blanco, o no se vé con la misma calidad que si lo asigno directamente en el propiedad 'Icon' del 'Object Inspector'.
Desconozco el por qué.