Salesforce support told me i should create a case on stackexchange to get votes on this idea because they admitted it is an gap in product.
Here is a link to the problem:
Copy of the idea text:
Dynamic content blocks perform poorly on view as web page when the sending data extension gets updated and journey builder is not used. In these scenarios dynamic content blocks will always show default content.
To change that behaviour i would like to have a third data source for rules of dynamic content blocks called programmatic variables (AMPScript / GTL / SSJS).
With this addition you could restore the VAWP like it was at send time when you query the SendLog, because you can fill the variables differently when you make use of _messagecontext. Normally you would set variables like SET @variable = [DE_FIELD] but in _messagecontext VAWP you would fill these variables by LookUp on the SendLog dataextension.
Here is the link to the idea, please Upvote it: