@Dax-
In most cases, if you do your mods right, you won't have to change that much. My suggestion? Try to avoid editing the core files as much as possible. I've managed to get all my mods going using just a customfunctions.php file with the exception of watermarking which required a slight addition to the i.php file. All of your hacks, mods, etc. should be contained as much as possible in your custom theme directory, and then all you have to do is make sure that you "port" your theme to the new version if things don't work right when you upgrade. If your custom theme doesn't work, at least you can use another default theme until you fix the errors.
With that said, you can also consider using SVN. I am learning about it as I go along, and it's pretty sweet for doing exactly what you are talking about. If you set it up right, it will only replace what you need it to.