There is no Shimano compatible 9 speed rear derailleur that can handle a 46t cassette. You can make one reach with a hanger extender, but shifting into the smaller cogs will suffer.
Advent will do a 46t cassette, but it is only compatible with Advent shifters.
Shimano 9 speed MTB derailleurs will not work with anything larger than a 36t cassette.