If I define

    expr = Function[{a, b},
       Evaluate@withTransforms[intgnd]];
(with `intgnd` the expression given at the top of the question),
I get tiny differences between points symmetric around $b=\pi$:

    ListLogPlot[Abs[expr[.3, #] + expr[.3, 2 Pi - #] & /@ Range[0, 2 Pi, .01]]]

![Mathematica graphics](https://i.sstatic.net/e6XPd.png)

so even if your coefficients are accurate, you will have lots of trouble obtaining good results unless you greatly increase working precision (and force the precision of your input numbers to be higher than machine precision).

If you can, it's probably better to rescale your variables at some earlier point to avoid such extreme numbers.

I appreciate that this isn't actually a solution; I'll remove it eventually (this information was too much to put in a comment).