As the RawHtmlPreprocessor will remove and stash raw HTML and it's content, and then run the different processors (including the DowngradeHeadingsTreeprocessor) and only after everything is done, run the postprocessors, more importantly for us the RawHtmlPostprocessor, that puts the stashed HTML back.