I got this error on boards that I had previously programmed OK with ICD2.
ICD3Err0035: Failed to get Device ID. If you experience
persistent problems communicating, the ICD 3 test interface
can be used to help diagnose the problem.
After double checking the target boards, remaking the programming cables
and generally removing the things that might be wrong, I applied external
Vcc and everything sprang into life.
The power consumption of the board is quite low - about 5mW, but there is
about 47uF on Vcc, which must be enough to skew some rise times or something.
Anyway - the moral is that using external Vcc fixed it...