Ok, everyone.... the cause of this issue is "none of the above".
This was a weird one... Somehow, a new member record for "Cormac" was created with a DATEDEACTIVATED date of
2019-03-10 02:13:55 which is an invalid nonsense time because of the daylight savings time jump that occurred last night. *All* new members are created as deactivated (DATEDEACTIVATED set). If this member had clicked the opt-in link in the email, it is likely this would have cleared the deactivated date and "magically fixed" the problem... we would not have known what happened. Kudos to the OP for posting on this... a new wierd thing for me to be aware of.
This is such an unusual thing to have happened that the code does not have any check for it (not sure how to check for it) and the date parsing crashed on it which is what was causing the membership load error. I will have to chew on this a bit... too many date parsing issues currently.
My only recourse in this case was to do an ad-hoc query to change this date and time in the db to a valid time that will not crash the date parser.
The membership module should load now... Lots of member records... are all of those members still active and valid? (separate observation related to email hygiene) Kudos if so... please clean up if not.