Instead, your balance includes only processed transactions, whereas your account also has a list of pending transactions that can hit your balance at any time. Pending transactions can also disappear from your account, only to come back as a confirmed transaction. In effect, you can't be sure of exactly what's in your account unless you manually keep track of every charge you've made.
Banks do more than this to make overdrafts difficult to deal with. For example, Bank of America intentionally processes your transactions from largest to smallest, ensuring you'll git hit with the maximum number of overdraft fees.
e.g: if you have $10 in your account, and you make a $3 purchase, a $4 purchase, and a $12 purchase, they'll run the charges in the order of $12, $4, and $3, hitting you with three fees instead of one.
tl;dr: banks love overdraft fees and do whatever they can get away with to hit you with them.