Each program is a microcosmos... Some programs super-score (i.e.: take the best score of each section), some programs take the most recent score, but most programs take the best score in one sitting session (without superscoring). Committees are made up humans... you can't avoid wondering which version of you will show up.
Do not take the MCAT, if you are just averaging the same numbers or barely above your prior score. You must have a substantial improvement to be meaningful (i.e.: > 4-5 points above) in your AVERAGE pre-testing.
Happy to PM with your mentee... a 512 is tiny bit below average, but for a trainee that had less opportunities than the majority of college graduates, that is an excellent score.