"Buffer Overflow" means the data arrives too fast for the MT-32 to handle. As stated previously, second generation units don't have this problem, as no data can arrive too fast for these models to handle. Reasons why this problem can occur:
the game programmer just didn't care
the game programmer only tested with a second/third generation model
the game programmer did insert the necessary delays, but timed them by counting CPU cycles.
Only in the last case will slowing down your system/DOSBox do any good.
"Checksum Error" is distinct from the "Buffer Overflow". It means that some data got lost before it arrived at the MT-32. This can happen because:
the game programmer counts CPU cycles to wait for the next available MIDI cycle (signaled by the MPU-401's "Data Receive Ready" bit) before sending a data byte. On fast computers, it finishes counting before the next MIDI cycle occurs, and so the game just gives up on sending that particular byte, thus losing it. Obviously, this is a different speed issue than the one causing the "Buffer Overflow".
the sound card/laptop/USB-to-MIDI's drivers don't handle large amounts of MIDI data properly and lose data. Update drivers.
the cables used are broken or not connected properly. Check connections and replace cables.
Only in the first case will slowing down your system/DOSBox do any good. Since you've said it doesn't, check the other reasons.
Note: Copied from the Real MT32, not being 'programmed' - using default sounds thread.