That should work, but you'll have to re-invoke /etc/profile and .bashrc and .bash_profile.
In fact you'd have to parse those files to just get env var defs and nothing else.

If you really want control, decide which vars/vals you want and add those to the top of your script, overwriting previous defs.