there could be a number of factors for this. MW3 just wasn't very good (i.m.o.) and i know it put some off the franchise, while others have eventually just got fatigued on the franchise (a yearly game which really hasn't changed that much for the last 5 iterations - it was inevitable it would have to peak eventually). i haven't bought it since the original BlOps which was a mess technically (though i did borrow MW3). the same happened for me with assassin's creed, i thought II was brilliant, brotherhood a good refinement, then with revelation it sort of went off the rails. i didn't bother with ACIII as the setting really didn't interest me at all, and from what i've read the core mechanics still have all the niggles they've had for 4 games, and without the architecture of the european settings, the free-running sounded like it would be dull.
also, in BF3, CoD has had more competition than it's had for a while. while still well off CoD's numbers, it has sold 6m each on 360 and PS3 and is continuing to release new content (with a new pack this month, and an another in the new year), so that must have some effect on CoD's numbers as many have stuck with BF3.. there's more people on my PSN friends list playing it than CoD:BO2.