En su código, está llamando a $row = $result->fetch_assoc();
justo antes de iniciar su while
círculo. Esta línea está "consumiendo" su primera línea sin procesar y cuando ingresa al ciclo, mueve el cursor a la segunda fila llamando a este mismo método por segunda vez.
La condición del while
loop se ejecuta ANTES del contenido, aquí encontrará más información sobre PHP While bucle
Para corregir su código, elimine esta primera línea.