That's incorrect. every ICSP pair is always accessible for programming. with the configuration bits you select which pair you want to use with the debugger
Feel free to check the datasheet
ICESEL<1:0>: In-Circuit Emulator/Debugger Communication Channel Select bits
Failure to find the device could be
-Wrong PGD/PGC connections but the wiring seems correct at glance
-incorrect power applied, that's more probable. Why are you supplying power from both the PK3 and the demoboard?
it's best if you don't supply power from the PK3.
if you have access to a scope try to probe the MCLR,PGD and PGC pins during programmer connection and see for abnormalities (sags, clock not being a clock, mclr at incorrect levels..)
also try using the IPE to connect, i find it faster to use when i have connection problems