Sua abordagem de usar soquetes RAW não está muito longe do que você precisa.
O mais provável é que seu sistema tenha a soma de verificação UDP transferida para a placa de rede, o que significa que a NIC está fazendo a validação da soma de verificação antes que o sistema operacional veja o pacote . Isso é ótimo por motivos de desempenho, mas significa que, no seu caso, você literalmente não tem opção de acessar esses pacotes.
Infelizmente, descobrir se isso está ativado é um pouco diferente em todos os sistemas operacionais. No Linux, você pode usar ethtool
para verificar a forma de linha de comando (não há um método de GUI que eu saiba). No Windows, ele está oculto na guia avançada das propriedades do driver da NIC (você pode nem conseguir vê-lo ou controlá-lo, dependendo do driver).