And Hal's right, Bitcoin chooses transactions to spend, not specific outputs (which only matters for sends-to-self, where you own both outputs of a transaction).
This pull request should fix this issue:
https://github.com/bitcoin/bitcoin/pull/116This sounds like a good patch to implement, is there a next step to getting it commited into the root of bitcoin? Is this pending code review?