Hello,
The requires a melee weapon bug usually occurs as far as I know when people use Custom Entry ID's that are not in the database, one way to solve this is to use entry id's that are in the database but not used by other items. You could also include those in the patch that you're creating which might solve that issue. For the question mark you can create a custom patch like you did however I personally use a addon that automatically grabs those ID's and Displays and shows them ingame without the need for a custom patch.
I hope that helps.
Greetings,
Groblerz.