Mount the joystick rotated 45' from what you would expect the normal position to be.
Then use the two outputs to feed the two (reversible) motor controllers.
When you push forward, both outputs / motors are equally pushed positive (if you get the orientation right).
Pushing 45' either side of forward gives full speed on one motor with the other stopped.
Back & to the sides does the same with reverse.
Moving side to side from centre rotates in place, one forward and one back.
It eliminates all complex "axis mixing" circuits, as would be needed with the joystick mounted so a single axis was forward.
Edit
To clarify, with that setup you use a two axis analog (voltage output for each axis) joystick.
This is the type of thing likely to be used in a commercial electric wheelchair, one with an extremely long life:
That would need + & - 2.5V supplies to get the neutral output at 0V, or add a couple of opamps to add in an offset and provide some gain if needed.
To both save money and simplify the electronics, you can use one that just has two conventional potentiometers - feed the ends of the pots from the speed controller reference voltages (+/- 5V or +/- 10V, or whatever they have) and the wipers go to the speed setpoint inputs.
eg. something such as this:
Sometimes a simple analog control device can be the perfect tactile solution for your project, but they can be surprisingly hard to come by. Luckily we've found a low cost, quality Mini Analog Joystick to fill you directional analog input needs!Unlike most arcade-style joysticks which come with...
Adjust the pot positions so the joystick neutral position gives 0V out.