systemd is written in C. Terse, poorly commented C. The non-type-safe language with an abysmal history of buffer overflows, by a team of muppets responsible for some of the most bug-ridden, garbage the Linux world has ever seen included in a major distribution (Pulse Audio).
Excuse me if my confidence is not there.
Init scripts, be they BSD style or sysV style can be easily customized, extended, replaced or de-bugged by anyone with a modicum of shell scripting experience. They have not proven to be a cross-platform compatibility problem, as systemd has already.
In 20 years of dealing with plain text unix log files, I am yet to have corruption in them, certainly not to the point where I could not view the logs at least partially.
The fact that these logs are getting corrupted most likely IS due to systemd, the developers simply don't give a fuck. "Assuming the corruption came from another source" is exactly the problem.
Also, what do you do if files are corrupted? You attempt to at least retrieve partial contents. Log files contain valuable information. Or we would not bother logging it!