Well the b string is like the most imperfect string. In fact the standard
tuning should have never been designed to have that string flatted in the first place, and it tends to sound out of tuned most of the time.
It might have something to do with your intonation. Every now and then I reset my intonation and it really helps, and it helps to make sure that the strings are looped well and are really snug at the tuning keys. That last suggestion was not meant to belittle any of your experience - we all make mistakes
Hope this helps - if I think of anything else I'll let you know.
http://www.guitarticles.net