@Tinchus your problems might be your choice of servo.
Futaba SU300 is a digital servo. It doesn't want to see PWM, it wants to see SBUS, which is serial data, 25 byte packets, at 100,000 baud, and the polarity is inverted.
I think that if it doesn't get SBUS, it 'falls back' to looking for 'normal' servo PWM, which is why it works at all.
I suspect (but this is speculation) that M42 doesn't work as expected because when the servo doesn't see either SBUS or PWM it holds position. Possibly you can program what it does in that situation if you put it on a programmer (you want a CIU-3 programmer, I believe), but that's about 50 quid. I'd buy a 'normal' PWM servo instead.
Alternatively, there's a reasonably straightforward SBUS arduino library by Bolder Flight Systems - possibly you could lash together something where your Duet talks to an arduino and the arduino talks to the servo. Still, I'd buy a 'normal' PWM servo instead.