Resolution
Do not pass #12/30/1899# to MAKEDATETIME(). That day is the "base date" which will convert to 0 and return a NULL instead of the date value.
Instead, return #12/31/1899# and increment the other field by 1 day using DATEADD.
For example, to replace NULL time values with 10:00pm, change the formula from:
IF ISNULL([Field]) THEN
MAKEDATETIME(#1899-12-30#, #22:00:00#)
ELSE [Field] END
to
IF ISNULL([Field]) THEN
MAKEDATETIME(#1899-12-31#, #22:00:00#)
ELSE DATEADD('day',1,[Field]) END