Have you measured the supply voltage with the ICD2? It is under programmer - settings - voltages, I think. You can use that to check the PIC power is getting through to the ICD2.
If that is OK, make sure all the connctions are correct, and then look at the MCLR, PRGD & PRGC with a 'scope, while attempting to program. There should be 3V square data signals on all of them. If not, you might have shorts or too much capacitance on the lines.
I have programmed a wide range of PICs with an ICD2, (10F200 .... 24FJ32G002) and the only problems have been down to connctions, power supply or something stopping the ICD2 from asserting the voltages.