Header refreshes correctly automatically on increase in reputations, but the changes are not immediately reflected on the profile.
Meta Stack Exchange is a question and answer site for meta-discussion of the Stack Exchange family of Q&A websites. It only takes a minute to sign up.Sign up to join this community
I suppose this is done by the server-side caching of SO. The server-side caching is a technology approach to keep a cached version of pages that are not frequently updated, but take server resources to load, or do not have significant changes coming too often. This can be applied to frequently visited pages too, if they do not change as frequently as they are served. In general, this is a mechanism to reduce server loads by returning an older version of the page, or binding it with an already calculated (although older) data. This is not the same as the browser cache, which can be manipulated by the user.
My guess is that the user profile's page is being cached on the server. So, the profile page actually is an older version of itself. The top header updates immediately, because there is some real-time communication mechanism established between the browser and the stackoverflow server (I do not know which exactly, as there are several technologies for it). This real-time communication is intended for immediate notifications such as inbox messages, reputation changes and etc. These things do not involve heavy server or database operations and appear immediately.
I have often noticed this to happen on various updates on my own profile page, including question views or vote count, reputation and even badges, but a few refresh clicks fix the problem. In this context, the refreshing will cause to either get the same cached data from the server, or a fresh one if the server decides the old cache has expired. So, you may need a few refreshes and more patience in order to get things synchronized.