Well, what I have concluded is that when calculating average position, google takes into account ALL your pages that were shown for the query. So for example, if you have an entry in position 2 on page 1, and another (different) URL shows on position 14 (page 2), AND there were three impressions (two for page 1, one for page 2), then it seems that the average position would be calculated as (2+2+14) / 3 = 6
So in reality you need to "drill down" on the data and only look at URLs that you know rank well for the query and then calculate the avg. position yourself.
Another point - if you are listed in Local search, and also (lets say) as #5 on page 1, then this will count as 2 impressions, one on position 1 (local search) and one as a position 5, with the average being 3.
Of course, personalised results muddy the field, the fact that you have personalised switched off when checking means nothing as what it counts is whether the searcher has his own personalised search on.