This is a good question. I had wondered the same thing before. I suspected the answer, but never took the time to be sure.
I just ran a test, where I published a viz with a data source that hasn't been updated since 5/15 - a few days old. Before I published it, the Tableau Server view showed data for today. After I published, the Tableau Server view showed only through 5/15. So, that confirms what you say that it overwrites the new data.
As for the question of publishing the workbook independent of the data source, I cannot find any way to do that. It is incumbent upon the user to refresh the data before publishing. Might be worth posting as an idea.
I hope someone will correct me if I'm wrong.