Ricky,
There are 2 issues involved in the discrepancy.
(1) When more than two levels or terms are involved, the calculation in GroupAna assumes sphericity. The situation with 3dANOVA3 (and 3dANOVA/3dANOVA2 as well in this matter) used to have the same assumption. However we recently made some modifications so that 3dANOVA/3dANOVA2/3dANOVA3 are no longer vulnerable to sphericity violation.
For all the 1st order contrasts in your case with GroupAna, it is not a problem because sphericity is not involved. However for 2nd order contrasts, there are 4 pairs: patientVScontrol_cat, patientVScontrol_loc, catVSloc_pat, and catVSloc_con. Sphericity assumes that all the 4 terms correlate the same way across the group. But it seems there is strong violation in your case. While 2 contrasts (patientVScontrol_loc and catVSloc_con) are roughly fine, the other 2 contrasts (patientVScontrol_cat and catVSloc_pat) are problematic with GroupAna. This indicates that there is more variation between Cat and Loc for the patient group than the control, and more variation between patient and control for Cat than Loc.
When such a violation becomes an issue, GroupAna gives less credible results. I wish I could find an easy solution for this monster program in this regard, but no success yet...
(2) The sampe size (only 3 subjects) is too small, which makes the impact of sphericity violation even worse.
Hope this helps,
Gang