We have used and are currently using all the solutions you mention. They all do the job of connecting and answering customer support questions. If cost is the mitigating factor we offer an in house support solution to our clients at no charge. Our Support Cloud includes FAQs - ticketing/email - and live chat. You can see a live implementation here http://support.atari.com/?/Knowledgebase/List
I have worked in support for over 10 years now and used Salesforce, Zendesk, Zoho Support, Vantive as well as an in house solution and I found that these favour the larger enterprises rather than an SME.
This is one of the things that lead me to create CloudSPRT, although I currently haven't created a Voice Center integration I would love to arrange a quick call (either VOIP or Telephone) to understand your needs and also how I can improve CloudSPRT.
I personally think HelpScout is overhyped, especially it only offers a KB feature through a (paid) plug-in, but I haven't tried it so it's just my impression (they certainly do good marketing though!)
I use Freshdesk Blossom plan ($19/m/agent) which is cheaper than the Zendesk Regular plan (the first one to provide domain mapping, such as http://support.mycompany.com )
I haven't had too much problem getting used to Freshdesk and they've made some good UI improvements overtime (such as sending a response AND setting the ticket status at the same time - probably something Zendesk does too). I also keep the impression that I struggled a bit with ZD when I used their trial a while ago.
We also use Grasshopper, but I don't know if/how it works for a call center (I guess they probably have an offer for that too).