The expensive part of making a game is actually making it, not releasing extra content. Sorting out the engine, designing and coding the textures, voice acting, all done. Seriously once you've got the basic coding down for wielding a gun, how hard is it to simply use a different skin? Change a few variables here, alter the recoil and damage there, whoop-de-doo, a new gun, that'll be 2 pounds please.
Some DLC don't even bother to try. Return to Ostagar for Dragon Age is a perfect example, no new voice acting and 99% of it was already existing content. The only things that weren't old were the boss (i think) and the gear.
If they were releasing the initial game for £15-20 instead of £35-40 then you're "i can see why they do this" might be valid. Instead what they're trying to do is maximise profit.