I would suggest a subreport with a formula. Your formula is almost there. Since Crystal works on a row by row basis, the maximum function will always return the same value. I would add a shared datevar like:
shared datevar maxDate;
DateVar X;
X:=CDate({InputMaster.DateOnMaster});
if x>maxDate then
maxDate := X
I would put this in the details section of the subreport, then suppress the subreport's header and detail sections.
in the report footer, I would place a formula that displays maxDate.
On second thought, I would place the subreport in the main report REPORT HEADER, so that it is run ONLY once. Suppress all sections of the subreport (you just want it to calculate the date) then I would display the formula that displays the date in the page header.
HTH