Huhh, a 30 kHz offset is pretty insane.
Up to this point, I discouraged everyone to play with the
preamble-detector's thresholding. In your case, a less conservative value (like a fixed 0.6) can be justified. It can detect 30+ kHz offset for *some* packets (depending also on noise). If you're running in monitor mode (-m flag), it reports the guesstimated frequency offsets (FREQ

.
I'll experiment with alternative preamble detection techniques as well.