The ROTC v. Academy thing has been beaten to death. If one thinks that one or the other is a slam-dunk decision, that person is a fool.
For starters, one has to think about his interests and long term goals in life. For example, USNA has a very strong engineering program. But, let's be honest here, its liberal arts program is not as good as many schools, and it doesn't even have a business program (for obvious reasons, yes, but that's not my point). There are a lot of schools with either NROTC or crosstown NROTC with academics equal to or better than USNA. Penn, Cornell, MIT, just off the top of my head. Granted, they aren't "all military, all the time," but that's not necessarily a bad thing. Now, if your choice is USNA v. Generic State U, I'd side with USNA, but that's not the question.
Speaking purely from a military perspective, the academy at least weeds out the guys who can't tie their shoes, but the quality of officer overall is not demonstrably better. For me, then, it comes down to the particular school, it's environment, and the degree one gets out of it. That's what's important, not "USNA v. ROTC."
Don't forget the civilian side as well. Even after 20 years in, you still have 20 years left of working life. If you don't want to be an aero engineer, why get a degree in it. And that's assuming you don't get out sooner.
Back 50 years ago, the ring-knocker thing would make or break your military career. That's no longer the case, so just choose the SCHOOL YOU WANT TO GO TO.