It's overkill. An SSL connection is all you need if you properly configure your server and know how to manage certificates. Adding another layer of encryption (you didn't describe it, so I assume it's another SSL clone) certainly can't harm, but you have to carefully design and implement it.
The reason why it's not common is because you need to implement your protocol both on the client and on the server, which is not a little effort. And supposedly if you can't keep SSL secure, you shouldn't implement a proprietary protocol altogether.
Also, note that the custom protocol only makes sense if you deploy your native client (you tagged "iOS", so I mean a native C/Objective-C implementation) before the connection: it's useless to have a Javascript client (you also mentioned HTTP so I guess it's a standard www application) transmitted, because if the attacker can break SSL, it can certainly manipulate the Javascript and at this point your protocol is no secure anymore.