Dear DPil,

In my humble opinion - you are doing everything right. There might be some hidden setting in Logic which is the reason of described issue.
And you are right - dithering and bit depth reduction has to be done as a "single process" - to be more precisely - you can not add dither noise after bit reduction - it has to be added before this process.

I recommend trying real-time bouncing in Logic instead offline - or another way if you are using real-time at default. It can be helpful finding the reason of the problem.

You can also try PSP X-Dither (even a demo version) - just to check if the problem occurs only with PSP Xenon.

If you'll have any other questions - please write an email: