Why does Google Now display my "Home" and "Work" locations inaccurately?
Google Now is guessing, based on where and when you spend your time.

If it's wrong, simply edit it. Once manually set it won't guess anymore.