3D Print Boolean Union fails

 From:  DigiD (DVANR)
9325.1 
Greetings all

This fan duct is driving me a bit crazy , I cant figure out why two pieces will not union to the main part as expected .
I worked out how to fix it by offsetting the part by .01mm ( .001 doesn't work) but would like to know why or what is blocking the union operation .

Anyone with an idea or strategy to fix or avoid this ?

I did manage to print this but only after using Meshmixer as a brute force fix. Not ideal as it introduces weird noise artifacts in the surfaces.

My experience with MOI is at about Level 1 here , the duct is about the most complicated thing I have drawn so far and just about exploded my brain.
Attachments: