Se por "manualmente" você quer dizer "instrua telnet
a enviar pacotes SYN e ACK", então não. Isso é feito pelo sistema operacional, que precisa manter o controle de todos os parâmetros TCP para uma conexão - números de seqüência, tamanho da janela, etc.
seria possível para um programa usar soquetes IP brutos e gerenciar a camada TCP por si só. Mas geralmente é uma coisa incrivelmente inútil - copiará muito código do kernel.
Se você está tentando aprender como o TCP funciona, tente Scapy . Ele pode criar e enviar pacotes usando determinados parâmetros, incluindo o TCP. (Você provavelmente terá que usar um sniffer de pacotes para assistir a coisas como SYN + ACK).