Se você gosta de dor de cabeça pode fazer isso, já que você vai ter de tratar os casos de perda e de troca de ordem de pacotes, e isso não é nem um pouco trivial.
O TCP já trata desses problemas para você transparentemente.
O UDP é interessante no seguinte caso:
a) O dado tem de chegar rápido e você não se preocupa se algum dado se perder, ou chegar fora de ordem;
b) Ele tem de ser distribuído simultaneamente a vários receptores (“UDP Multicast”).
Por exemplo, a Bolsa de Valores começou a distribuir as cotações via UDP para seus clientes, mas ela tem um canal de “recuperação” (ou seja, onde você pode solicitar as informações perdidas) que é via TCP.
O caso da perda ou troca de ordem de mensagens é tratado por um protocolo semelhante chamado PGM, mas ele não é implementado em muitos sistemas operacionais, e ainda por cima não tem suporte no Java.