You're right in that calculating IBUs is simply math. Unfortunately, it's not simple math. Quantifying bitterness is actually extremely difficult, and there have been many attempts at finding an algorithm that fits. There are at least three different algorithms (Tinseth, Rager, Garetz) commonly used in brewing, and each of them will result in a slightly different answer.
I use Tinseth (set in BeerSmith as the default algorithm), as I've heard that it's the most accurate for small batch brewing. Regardless of the accuracy, I find that I get expected and repeatable results by sticking to a single method.