Porque entran en juego fabricantes y operadores y ninguno hace las cosas bien. Muchos terminales no son ni serán compatibles simplemente porque se quedaron sin actualizaciones antes de que el operador/fabricante implementara la configuración del IMS para VoLTE. Otros tardan más porque desde que el operador pide al fabricante integrar la configuración y ésta llega en forma de actualización al terminal es un proceso largo.
Básicamente hacen falta dos cosas: Que el terminal tenga el APN IMS del operador y que el operador de "el visto bueno" a un terminal concreto y valide el uso de VoLTE para que la opción aparezca en los ajustes. Si lo primero fuese un ajuste con unos valores obligatorios e idénticos para todos los ISP la cosa sería más rápida. Aunque todos los operadores están usando el mismo nombre de APN, lo que falla es que cada perfil va asociado a un operador, por lo que cada uno debe ajustar el suyo. El estandar podría haber sido de otra forma más simple en lo referente a su configuración y que tuviesen que cumplir al milímetro, pero no.
PD: No viene al caso, pero hay otro tipo de APN: xcap que sirve poder ejecutar códigos USSD y otras configuraciones o servicios suplementarios que actualmente sólo se pueden hacer mediante 2G/3G, por ejemplo cambiar la configuración de llamada en espera, desvíos, ocultación del número, etc desde los ajustes del teléfono. Actualmente solo Vodafone y Movistar tienen este tipo de APN en el repositorio de Android. Todavía nos quedan años de la mala planificación de VoLTE.