There's a place that yelp-3.0.3-man-compatibility.patch missed, though fixing that place might be a bit tedious.
In libyelp/yelp-uri.c in find_man_path 'man -w' is used.
It's yet another option that has different meaning in legacy man and man-db.
For legacy man, '-w' not only prints cat pages, which yelp doesn't expect, but the lines for those pages are formatted in a way yelp doesn't understand.
'man -W' might be a solution for for legacy man, but not only this option has a has a different meaning for man-db (it prints *only* cat pages there), but we'd need to filter out cat page from the output.
(on unrelated note: it just might be me, but I can't get yelp to display *info* pages - it gets stuck on loading (I strongly suspect yelp_bz2_decompressor_convert is subtly broken, but can't figure out the problem yet))
Should be RESOLVED/NEEDPATCH :)