I clearly missed something, but why are you not going markdown -> PDF directly? That's what we use extensively in our operations playbooks at work and it gives something that looks like I'd get in a book - even more so after I tweaked the templates a little.
Because the user in question does not know and is unwilling to learn how to design anything if it is not web technology.
That is, you probably want to design PDF output. Some users prefer to do any design work whatsoever using web technology. Therefore, PDF needs to be generated from HTML.
If OP is used to working with HTML/CSS, it will probably save him a lot of time and energy to do basic formatting in HTML/CSS than to learn how to design a professional-looking PDF document. He's a programmer and novelist, not a designer.
In fact, he's not even aiming to design a professional-looking PDF document, just a throwaway printout for proofreaders who don't know how to parse Markdown.
Why not use something like http://github.com/susam/texme as a starting point? Really easy to turn any Markdown document into a rendered HTML with a single line of code in the header.
This rendered HTML could be converted to PDF and printed or the self-rendered HTML itself could be printed directly.
There are a whole bunch of similar tools written in all sorts of languages, and OP just chose what he's most familiar with. It just happened to be different from your favorite toolchain.
It also looks like OP's book was split into several Markdown files, one for each chapter. So he would have needed some sort of build script anyway if he wanted to use texme on the combined document. He would also have needed more than a single line of code in the header, since he wanted some custom styling for blockquotes and code snippets.
They also noted that they (ab)used different markup for different character parts and code blocks would usually be rendered very different from block quotes. Markdown → PDF may give less control over the output formatting than Markdown → HTML + custom CSS → PDF.
I'd probably use Asciidoctor which gives more flexibility on the markup side already, but if this process works for them, why not use it.
I am not aware of any direct Markdown -> PDF converters. What do you have in mind?
pandoc makes use of Latex, which is extremely bulky and brings with it a lot of complexity and idiosyncrasies.
I was not able to get anything as nice as a GitHub rendering out of that.
The only alternative I know is using web technologies (chrome headless) to produce a PDF, which is what the author does.