I'm a strong believer in "the right tool for the job". However, the job doesn't stop with what needs to be done, but also by whom - now and in the future. To select a language for a job, a manager or project leader should consider what expertise he has available over the lifetime of the project.
I quite agree that one of the most important factors for choice of language is having the technical resource (now and in the future) to write and maintain in it.
Unfortunately (as I rant quite frequently) a very large proportion of IT managers (at a decision making level at least) have little or no technical understanding. As a rule they are appointed by business managers, following the age old adage of 'appoint someone as much like me as possible' (this approach is well attested in org psychology BTW).
They therefore make the decision of what language(s) to mandate in house, often on an entirely non technical basis, based on: the advice of their employees (which they will rarely listen to), the business tech media (what's todays buzzword folks?) and salespeople (Always trust the advice of someone with a personal interest in your decision < /sarcasm>).
The result is usually that the choice of 'the right tool for the job' is constrained by available resource, which is in turn constrained by what has been mandated as the 'house language', often for entirely non technical reasons.