It's a simple concept right, easy to follow, right...
Some people a stoopid - fact! However:
The inventory shows the cache has a TB, you go there it's not in the cache. This could be for various reasons.
someone has beaten you to the cache, took it to move it on, and hasn't been back home to log the TB, or log the cache find. (some people log the find via their mobile phone in the field, but most don't). Some people cache whilst on holiday and don't log their finds for weeks!
someone has moved it on, but forgot to log it. It can be discovered elsewhere and on it goes...
someone picked it up, and lost it, and too embarassed to log it
It has been muggled - i.e. someone who does not know about geocaching has stolen it. It happens.
It might have been stolen by a geocacher - unlikely unless someone has a grudge against the owner (it happens but not very often).