The things is, and I'm talking from a developer's point of view on this, translations aren't that easy when we're developing a game. We have to take care of a lot of intricacies due to the way it's handled. I'm not blaming BGA here, just stating a fact, they've chosen the software they've chosen, and it imposes some rules about how translation is done. And at least some developpers haven't dealt with internationalization/translation before coming to BGA.
For some of us developers, English is neither our native language, nor a language we speak fluently. So developing the game feels like we're already doing some of the job a translator will be doing afterwards...
And then coming back to the translation HQ to change the context of 50 to sometimes around 500 strings, or perhaps even more, you can understand that this is daunting even for some experienced developer. I'm not saying we (as developers) shouldn't do it. It's great that some go to such lengths to help translators! I'm just saying that sometimes it feels like translating the game a second time. And given that the first time around wasn't necessarily easy, some of us leave the things as it is.
Again, I'm not trying to put the blame on anyone, just explaining some of the reasons some devs aren't inclined to input context in the translation system...
EDIT: Although to help improve things, my humble opinion is that a translator should be working with a dev from the get go, so that the tak may be split among the two... I'm not entirely sure how this can actually be done because we don't really have the tools as developers to extract the strings that are going to be translated beforehand, other than actually copy/pasting the strings. A translator having a developing background would be great, but this feels like looking for the rare bird...