Con el icprog no te puedo ayudar, yo he pasado de el pa programar los 12c508/9, lo unico q puedo decirte es q si mal no recuerdo hay en esta misma web un documento de como grabar los 12c508 con icprog, pero ni siquiera lo he leido.
Mi consejo es q uses el prog508, yo tampoco tengo mucha idea de msdos, mira, si sigues los siguientes pasos no tienes q tener ningun problema:
1- Aunque tu S.O. sea el win xp, coges un disco de arranque del win98 y arrancas con el, en el menu que te sale coges la opcion de 'Solo simbolo de sistema'
2- Empieza a arrancar en msdos y te queda C:\
3- Sacas el disco de arranque y metes otro disquette, en el q previamente tu has metido el prog508/9 y el archivo *.hex q quieres grabar al pic, supongamos q este archivo es el onechip.hex
4- Una vez metido el disquette con el programa y el hex a grabar pones 'a:' y el sistema te lleva a la unidad a, es decir, te queda A:\
5- Cuando estes en A:\ pones el programador en el com1 y tecleaas la siguiente linea: prog508 onechip.hex 1 (siendo el 1 el numero del puerto com q usas, si usas el 2 pues pones un 2 y ya está)
6- Empieza a programar y en unos segundos te dirá dos veces 'Verify true' y ya está tu pic programado correctamente, este metodo no falla, seguro.
Tambien tienes otras opciones, como son verificar si el pic esta en blanco, leerlo... y estas opciones te crean un .hex con la lectura, pero yo no las uso, simplemente programo directamente.
Espero q este mini tuto te ayude, suerte!