The digitalWrite instructions take time. In fact they are quite slow (comparatively). Also looping take a small amount of time. So the first microsecond delay needs adjusting down a bit, and the second one by a slightly different amount to allow for the time it take to loop back. Probably best done by measuring.
Oh wow, the initial reference went over my head. But I see from Google why that frequency is so interesting. I can't help thinking if that is used in an unauthorized way you will soon draw some very obvious attention to yourself.
Currently, the largest value that will produce an accurate delay is 16383. This could change in future Arduino releases. For delays longer than a few thousand microseconds, you should use delay() instead.
Straight delay uses the hardware timers. delayMicroseconds uses a timing loop. I would imagine the loop might drift (eg. with interrupts firing). So I think the combination would give a more accurate result.