Olá Denis eu tive o mesmo erro que você enquanto estava desenvolvendo o código, no meu caso era a posição das raquetes que estavam muito para frente, porém como você disse que já tentou isso tenta dar uma olhada no raio que você declarou e nas funções de colisão que você desenvolveu, acredito que esteja lá o problema, se for de ajuda eu escrevi esses trechos que eu falei assim e está funcionando:
let diametro = 20;
let raio = diametro/2;
let alturaRaquete = 15;
let comprimentoRaquete = 90;
let xRaqueteOponente = 585;
let yRaqueteOponente = 150;
function verificaColisaoBorda(){
if(yBolinha + raio > height || yBolinha - raio < 0 ){
velYBolinha *= -1;
}
if(xBolinha + raio > width || xBolinha - raio < 0){
velXBolinha *= -1;
}
}
function verificaColisaoRaquete(x,y){
colisao = collideRectCircle(x, y, alturaRaquete,comprimentoRaquete, xBolinha, yBolinha, raio);
if (colisao) {
velXBolinha *= -1; }
}
Espero que ajude