Driving Stepper Motor with Variable Frequency PWM

I wrapped a block of code with a pair of micros() to time it. The block makes a variable frequency PWM signal using a DueTimer object and a bare bones interrupt function to make a pulse. I use this signal to drive a stepper-motor like a standard DC motor. The problem: the pair of micros() says the block takes roughly 100 microseconds, but in reality it takes much longer. The problem is worse when I make a high frequency pulse (8khz). Does the micros() function work properly with interrupts and timers? What about the delayMicroseconds() function?