...DICE is doing a bad job at game-making. Sure, they can build engines, but gamemaking is more than that. DICE last good game was BF2. After that, it went all downhill looking through Battlefield-eyes...
You left out BF2142. Just because the futuristic setting wasn't popular doesn't mean it wasn't a good game, in certain respects it was better than BF2...
For the last 5 years, DICE haven't been making bad games, they've just been putting their flagship (BF) first. It's the reason why they pulled the pin on BF1943, finishing it would've delayed BF3.
Aside from 2142, I think it's safe to say all these "offshoots" (BC, etc.) are really nothing more than gap-fillers between BF2 and BF3, serving the dual purpose of keeping the Battlefield brand on the shelf (to keep Activision honest) and serving as a test bed for the Frostbite engine.
Keep in mind that they've been working on the FB engine for years, and as it's one of the first true next-gen engines (optimized for 64-bit, full DX11 support, etc.), I think they can be forgiven for releasing a few, as we BF purists might call them, duds...