Hmmm. OK I found out from browsing on Hydrogenaudio that each MP3 frame is made up of 1152 samples and that each frames duration can be calculated using 1152/frequency, so in my case all my "problem" files frames are 1152/44100 seconds long which calculates out to be 0.02612244897959183673469387755102 seconds.
Thread posting here: http://tinyurl.com/3tgbj
Using MP3Library I determined that there are a total of 92,720 frames and when I multiply it out I get 2422 seconds which is 40 minutes and 22 seconds which is what I would have expected and has shown to be the correct duration.
Am I missing something here? I'm wondering if somehow the calculations are being rounded up and not using the full precision of the frame duration string?