I see no reason why a student should be penalized for being behind, for whatever reason. Students learn at different rates and each has unique circumstances. Some have a very heavy load of responsibilities and stresses that others don't have. The point is not to enforce rules for their own sake but to impart knowledge and skills. Tests and assignments are meant to measure that, not how well a student is coping in their life.

If a student learns the material by the end of the course, who cares about timing.

I had a Chemistry prof who had a reasonable compromise. He said you can hand in any assignment late. If I haven't finished marking that set of assignments, fine. If I've finished, too late. It's not fair to others for your assignment to be marked out of context. In effect, 1-2 days late? No problem. Beyond that, it's a crapshoot.