This is almost as hot a subject as reusing mughs and pool hopping. You have to do what you feel is best for you. I leave it when I feel the auction is completed. When I buy, IMO that is when I recieve the item and I'm happy with it. No further discussion is needed with the seller. As a seller, I leave it when the buyer received the item and let me know all is well (I actually use a second party to leave my feedback, so it gets left after the buyer leaves it for me...which offers me the most protection).
The other school of thought is, that you should leave it when the buyer pays. Some feel you are holding their feedback hostage if you wait to see if they like the item. I don't agree (I think that it encourages the buyer to get in touch with you first, before leaving a neg, since they don't want what they might see as a retailiatory neg back), but luckily everyone can do it whichever way they like.