Here is what I know of the status of this problem as of DSP firmware 20. This is what I've observed testing on MacOS:
1) In one way, DSP firmware version 20 is an improvement because you can now set the usb buffer size to 16 to fix the latency problem and it will stick when you reboot. That provides good alignment when recording in most cases. It also provides decent latency when using the Axe-FX as an audio interface. Yay!
However, the more basic issue remains the same as it has for four years: A user buys an Axe-FX III, studies the manual to learn how to record, records some audio, finds the audio timing is way off, and concludes the Axe-FX USB I/O is useless. Until something is done about that, I'm not sure the issue can be considered resolved.
As it is, the user is expected to possess some arcane knowledge about configuring the Axe-FX for recording. That's proven time and again to be an unreasonable expectation. It would be a big help if something could be added to the user manual that mentions this problem and points the user to a solution. But, it's been four years and no such addition to the user manual has appeared.
A better solution would be to make the Axe-FX work correctly right out of the box. The buffer size should probably default to 16 from the factory. Or, better yet, unless there's a good reason to make that buffer size adjustable, it should be fixed at 16 and not be changeable.
In addition, I'm seeing some new problems when using DSP firmware 20:
2) The I/O latency for a buffer size of 16 is at one value for the first 4 minutes after you reset the usb channel (which occurs when launching your DAW, rebooting the Axe-FX, connecting the USB cable, etc.). After 4 minutes, it steps down by exactly 128 samples.
3) Changing the usb buffer size parameter to 16 from the audio menu will result in a different latency than either of the two values from issue #2.
4) Importing a preset screws up the latency. Repeatedly importing the same preset causes the latency to jump around to seemingly random values.