ok, so i solved it, so i thought i'd post the answer if anyone else finds it useful.
I've done this by trial and error, so I would still like someone to come on and explain why/what this error is and what caused it etc.
however, here are the changes i made to get it to compile:
#if (_MSC_VER < 1310)
pfTarget = CMember::Target;
pfMine = CDetour::Mine_Target;
Verify("CMember::Target", *(PBYTE*)&pfTarget);
Verify("*CDetour::Real_Target", *(&(PBYTE&)CDetour::Real_Target));
Verify("CDetour::Mine_Target", *(PBYTE*)&pfMine);
#else
//Verify("CMember::Target", (PBYTE)(&(PBYTE&)CMember::Target));
//Verify("*CDetour::Real_Target", *(&(PBYTE&)CDetour::Real_Target));
//Verify("CDetour::Mine_Target", (PBYTE)(&(PBYTE&)CDetour::Mine_Target));
pfTarget = &CMember::Target;
pfMine = &CDetour::Mine_Target;
Verify("CMember::Target", *(PBYTE*)&pfTarget);
Verify("*CDetour::Real_Target", *(&(PBYTE&)CDetour::Real_Target));
Verify("CDetour::Mine_Target", *(PBYTE*)&pfMine);
#endif
my changes are in the 2nd half 'else' statement, original code is commented out.
For each error (relevant line numbers in original question) - I commented out what was there, copied and pasted from the 1st half "if" section", but changed from "pfTarget = CMember::Target;" to "pfTarget = &CMember::Target;" (based on instruction from the compiler).
seems to be two different issues, first taking the wrong path in the if/else block (_MSC_VER supposed to be set somewhere and isn't?) and secondly the required change from CMember::Target to &CMember::Target.
thanks