Hey David -
The honest answer is "I'm not sure", but I suspect you just might be able to pull this off using a variation on the technique described here:
(it assumes you have Tableau Server)
Your trick is a good one for creating an empty TDE that we could manually load historical data into from flat files that we've exported, but that too is a pretty painful option. Your use of date functions within Tableau led to some brainstorming about doing the same within the SQL itself and we coded the following where clause:
Where DimDateKey <= 20100001 + (TO_DAYS(NOW()) - TO_DAYS(DATE('2013-02-14'))) * 100
Each day it increments the max month of the data forward. So we can put it in the initial data source SQL set it up for daily incremental refresh of the TDE, and after everything gets loaded it'll just sit there being irrelevant.
I was almost able to do the same thing without custom SQL by putting that formula into a calculated field, but the SQL that Tableau spit out wasn't formatted Column = formula, which is a requirement for my database to trigger partition pruning for maximum performance.
it's very unpolished but you could make yourself an idea what can be done in v8, with new TDE API.
Great solution. Well done.