If back in the day, when I had to buy a camera and only had the 300d or the 10d I would have still chosen 10d. why because it is a better camera than the 300d.
Now don't get me wrong the 300d is a good camera, but the 10d performs better when everything is added up in the end.
you said that you would like the camera to last 2-3 years. You already think that you will out grow the 300d. It is because of this that I would recommend the 20d. there are waiting lists for it, and by the time your name gets to the top you will be ready for it + you can talk to your wife in to it
you might even find that the 20d would last longer than 2-3 years. The fact that it is going to cost less when you have finished with it, is not important. That is a fact of the 21st centry.
btw I would recommend http://www.aucklandcamera.com/
then at least you know that if you have problems, you can send it back to canon nz to get it fixed.

