En qué se diferencian realmente los dos formatos
Menos de lo que parece, pero lo suficiente para que uno falle donde el otro funciona. Un archivo WebVTT debe comenzar con la palabra WEBVTT en su primera línea; si falta, el navegador descarta el archivo completo sin ningún aviso. Los milisegundos se separan con un punto, no con una coma. Y la numeración correlativa, obligatoria en SRT, no tiene ningún papel aquí.
Existe una cuarta diferencia que provoca fallos en la mayoría de conversores sencillos: en WebVTT el texto se interpreta como HTML. Un ampersand o un signo de menor que sin escapar se interpretan como marcado y pueden alterar el resto de la línea. Aquí se escapan correctamente antes de generar el archivo.