J.P.
You misunderstand. The one-time calibration of the accels does a nice job of subtracting out offsets. You should not have to constantly update the offset values. You DO have to update the magnetic calibration, but that function is already included in our fusion library.
Neither of the above addresses random noise. There's nothing you can do about that other than apply a low pass filter. If you are using our fusion library, you should NOT do that. We already include a low pass filter into the eCompass algorithm, and the Kalman filter already assumes random noise in the input (in fact, Kalman mathematics depend upon it). As noted elsewhere, I am not a believer in pure (unassisted) inertial navigation using commercial grade sensors. The calculations WILL blow up, it's just a question of when.
Mike