Update date field from another model

Is the Timeline model is related to the Program model with the Program__c field?
Do both models have the Mail_Date__c fields?

Assuming yes to both above, then the issue is that Program__r.Mail_Date__c in Timeline model isn’t yet updated with the Mail_Date__c on Program model. It would still have the value it had when the page loaded. That’s even if you saved the Program model. You could of course requery the Timeline model, but that’s a poor UX.

I’d just add the Program model and row to the snippet in order to use it in the updateRow function. ie. programModelRow.Mail_Date__c in place of Program__r.Mail_Date__c

Cheers