The accounts/labels in the (non-raw) bitcoin API do not have anything to do with coin selection. It's simply in order to keep separate balances for accounts in a shared wallet. The actual coins are shared, but transactions to certain addresses will credit the account they belong to, and sendfrom will deduct its balance from the given account.
If you need control over the coin selection process, use the raw transaction API, or separate wallets (zhich is, right now, mostly a pain, but we at least plan to add support for multiple wallets in some future version).
Good to know, thank you. It's taking me a bit of understanding to learn how bitcoin operates instead of using an online wallet. I've been feeling I should probably be looking after my own coins