I don't understand this part
Bitcoin-Qt (and bitcoind) do not segregate the bitcoin funds into accounts in the wallet
As far as i know, each account has receiving address(es), and funds received on these address(es), can only be spent by this account. i tested it my self, sendfrom <account> method choose transaction output sent to <account>'s addresses, and don't mess with other accounts' coins.