TPW (or some early GH employee) has posted somewhere that yes, the cost of servers on your own is cheaper.
However, the original goal of GitHub was to build a tool that allowed collaboration easier. You pay for the experience and the tools and the network IMO.
Exactly, it's more than just a place to store code. Just doing git clone on your repo url is a lot easier to deal with than setting up your own git hosting and configuring everything.
You can add collaborators to private repos (ie people with push rights). You can have organizations with private repos and use the collaboration tools within the organization.
For me, the private repos are more about having them where I have my other code.
However, the original goal of GitHub was to build a tool that allowed collaboration easier. You pay for the experience and the tools and the network IMO.