when you run a script from BASH what it does is run another "instance" (parallel shell) of Bash for the user which is running it
and thus it doesn't use the same Vars = it doesn't update what you want.
What is practice in scripting is to define a variable like:
TODAY=$(date -d today +%F)
TOMORROW=$(date -d tomorrow +%F)
^^^ no export
and these variables are available only when script is running, then they get unset.
If you would like to try set them to the environment, then call the script with:
# source script_name.sh
which will leave the variables set whenever you run it and then you will have to unset