You'd need the right Arduino for the job. It needs to have a 16 bit timer with output compare to generate accurately timed pulses. Its more common to use the timer and output compare for PWM, so you need one with 16 bit PWM. Some models only offer 8 bit PWM which wont give you the timing accuracy you need. You are going to have to control the hardware registers of the Atmel MCU directly, + provide an interrupt routine that after each transition, loads the compare registers with the time of the next transition (in terms of the 16 bit timer count), so its not so simple to code. Its unlikely you will find a sketch for this, so you are going to have to write the low level code yourself.
I don't develop on the Arduino platforms so wont be much help. If I was tackling this for my own use, I'd probably use a fast PIC18 MCU as I am familiar with background arbitrary pulse generation on that platform, but the toolchain has a fairly steep learning curve and isn't cheap to get into, so you probably don't want to go down that route.
I didn't suggest a MOSFET, I suggested a low side gate driver chip intended for driving a MOSFET. They convert a logic level signal into a higher voltage signal - typically 9 to 15V depending on the supply voltage, that is used to control the MOSFET gate. As a MOSFET gate behaves much like a capacitor, to switch the MOSFET cleanly, the gate driver has to be able to supply a large output current for a short time. However it isn't designed to supply such a current continuously. I'd pick a gate driver rated for 30V supply. There are other methods of going from a logic signal to a nominally 12V pulse, but if you want a pulse width resolution of 10us, (to get 2 digits after the decimal point when specifying the pulse length in ms), you need something that can switch faster than 200KHz, which rules out cheap pre-built H-bridge shields or modules, and most of the simpler remaining methods of level shifting don't have much output drive capability so will be very sensitive to the IDM's input characteristics.