It often comes down to expertise, energy, and ability.
For expertise, many (most actually) people don't know load balancers well enough to trust themselves with managing a mission critical highly available load balancing solution. It's often better to trust the experts who focus on that.
For energy, even some people with expertise would rather have someone else take care of it. Consider the middle of the night when a power supply fails, do you want to deal with it when another provider can handle it instead.
In regards to ability, often times people don't have access to the network equipment or other requirements to make sure that the load balancer itself is highly available and redundant. Consider a hosted solution with Amazon's AWS. You don't realistically have the ability to host your own load balancer on premise.
All that said, there are many times when you do want to do this yourself. If you have unique requirements, you want to save money and you already have the expertise, energy, and ability, or if you just like to keep in control of your own environment. Or, for performance reasons you want the load balancer in the same data center as your equipment to save latency on the internet when performing unnecessary network traversals.