What I don't get is that you keep talking about the user being able to replace the blob. Replace with what? He can't create a new blob, he can't make changes to the original blob - the only thing he *can* do is replace it with another blob from the vendor.
On a system where this is possible, he can actually be coerced to "upgrade", and there may be other "functionality" baked in that he doesn't want.
On a system where this is not possible, the vendor has no easy way to make the system less free after the fact. Given this, the user is protected better.