Estuve viendo algunos tópicos que subieron acerca del tema,
Desde mi punto de vista la parte de la pregunta está mal planteada, ya que el código proporcionado funciona "correctamente", ya que solo quedaría agregar el ">=" para cubrir con todas las posibilidades y quitar el else que está de más.
Me pregunto si el objetivo del desafío fue este, ya que no veo forma de que el código ofrezca descuentos diferentes a 0, 10 y 20
let porcentajeDescuento = 0;
let cantidadMillas = prompt("Ingrese la cantidad de millas");
if (cantidadMillas >= 30000) {
porcentajeDescuento = 20;
} else if (cantidadMillas >= 5000)
porcentajeDescuento = 10;
console.log(porcentajeDescuento);