A razão pela qual isso não estava funcionando foi porque o Apache está enviando a resposta para a solicitação CONNECT como dois pacotes separados:
Pacote 1: Conexão HTTP / 1.0 200 Estabelecida
Pacote 2: Agente de proxy: Apache / 2.2.25 (Win32) mod_ssl / 2.2.25 OpenSSL / 0.9.8y
Eu estava quebrando o loop de leitura do soquete em "200 Connection" e o Packet 2 estava sendo usado como o Server Hello, já que era o próximo pacote na fila.