Hi,
It's probably linked to caching. If you have a mechanism caching the whole HTML of the pages, then the cart module's HTML will be the one of the user who first accessed a specific page which was cached. Then, when someone else comes by on the same page, even if the cart linked to the user is correct in the database, since the caching mechanism bypasses the generation of the page's HTML for the cached one, then the user will get the HTML of the other user and thus will see the cart of someone else.
Unfortunately, you can't really use page caching with a cart module on all your pages since the cart module needs to be different for everyone.