Keep your 2003 M3. They look great. Plus they are probably more reliable than the new one. Why pay for a newer car with more miles on it? You may know the dealer, but you don't know anything about the previous driver... I would keep your old "baby" until she literally dies... 200,000 miles is doable. One of my best female (!) friends has this 1988 325is. With more than 200k on the gauge. So retro. So cool. The cost of keeping yours is most likely less than the depreciation plus maintenance of the newer one. And is the newer one really that much fancier, better, etc.?
In the end, it's about driving experience: road handling, the straight six cylinder engine, the feel. Your 2003 definitely has its charm. Do you really want to trade it in?
I have a weakness for older cars. Maybe that's it. Anyway, my two cents...