Ohhh the 1 million question... Why Google show different results depending on the browser, computer, connections, etc...?
It is certainly known that Google WILL show what "he" thinks might be more useful to the user searching. They DO track what you searched, visited, etc, even if you are not logged in, they WILL deliver personalized results based on several (yet unknown) variables, some are location, device, browser, etc. You can even search with the same account, computer and different browsers and get different results, for some reason they think a search within the same device, and account, but with a different browser should deliver different results (this isn't always the case, but in my experience I found this kind of results regularly). The device is "understandable", pages may look different in different devices, so perhaps a page that is ranking well on a desktop, doesn't rank too well on a mobile device as it may be "unreadable" while on an iphone (for example). So is the location, they want to deliver more local results, and that is also understandable.
What I would suggest is this cases, is that you take ONE of the ways you track and then stick to it to run your reports, Moz uses (I think) this type of query: https://www.google.com/search?q=auto body calgary&gl=us&pws=0 (I almost find the same results as they report using that).
To answer your second question, it is also kind of a mystery, we cannot control what Google shows, and they will show what they think is for the best interest of the user. So even if you create a landing page for a specific word, that word SERP may show your homepage instead of the page you created or the other way around... Who knows...