delayMicroseconds(0) = 16383µs

If most of your delays are greater than say, 10 us, you can just call delayMicroseconds(delay+1)

or create a Macro:

#define FIX_DELAY(x) ((x==0)?(1):(x))

and call delayMicroSeconds(FIX_Delay(delay));