I'm using rechargable Ni-MH Panasonic eneloop pro AA batteries in the Garmin. They've worked great and last for several years. I tend to agree with you which is why I've always opted for carrying a Garmin but eventually the 450 is over a decade old and which technology changing so much, it would stand to reason that newer devices (and phones) might track things more accurately. My friends started using the apps and were getting similar elevation to my GPS but their apps always indicated more mileage. I've found the apps drain about 10% battery every 60-90 minutes so they definitely are not good for longer hikes. But here is my issue with the Garmin 650 and 750 which didn't seem to be an issue in the 450... 

After a hike, I used Garmin BaseCamp to examine my route. It's a great program for analyzing sections of hikes, setting waypoints for future exploration, or just planning future hikes. But analyzing tracks in BaseCamp is where I found issues. It's where I highlight all of the points on a single track but get sometimes radically different results if I don't highlight the first or last point (doesn't matter which). Sometimes it's not too big a deal like 4.3 miles changes to 4.1 but the longer your hike the more that completely changes the data. I did San Jacinto a couple years ago with the Oregon 650t. My route (which was set to every 20 seconds back then) without the last point showed 10.2 miles & 2600' gain but when you include the last point it jumped to 14.1 miles & 2700' gain. The moving and stopped times also changed by 30 minutes. All of the hiking books show it is much closer to 10.5 than 14 miles. When I tested other hikes against book mileage, the Garmin usually matched closer when you remove the last point. Seems like a software bug that wasn't present in the 450. 

That's my only real issue with the Garmin device.