If you mean that nothing happens when you type PING in the chat, then that is expected. Such a message would be received in the format (more or less):
:sangate!sangate@sangate.tmi.twitch.tv PRIVMSG #monstercat: PING
…and thus not start with PING. Your bot should only respond with PONG when the server sends a message with the PING prefix. If this is not the case, and you only mean that the bot doesn’t respond when you manually set buf to “PING”, then it could be because of this bit:
output.Write(buf.Replace("PING", "PONG") + "\r\n");
Since all received messages already end with \r\n you are effectively sending:
PONG tmi.twitch.tv\r\n\r\n