@fgtech Did some more testing on this. Turns out I was just being hard on the Windows and Desktop Linux outputs and they are overall similar to that on macOS. Pretty good actually.
However, turns out that headless is a mode built into all Chrome/Chromium binaries. So, instead of using the Chromium that comes with puppeteer I pointed it at the desktop linux install….
…And the output was really bad again.
Turns out it isn’t the install or the setup but something about headless mode on linux where kerning and hyphenation is just broken. Headless mode on other platforms works fine.