AH oui, j'ai fait quelques tests et ta regex fonctionne dans l'absolu sur une routine JS comme celle-ci:
var regex = /^\d+\,\d\d$/g; 
var input = "12,25"; 
if(regex.test(input)) {
  var matches = input.match(regex);
  for(var match in matches) {
	alert("entrée correcte="+matches[match]);
  } 
} else {
  alert("Format incorrect!");
}

où elle n'accepte pas un chiffre sans la virgule, contrairement au test du pattern par le navigateur (Chrome chez moi) qui semble "trop intelligent" en "devinant" que 12 = 12,00.
Il faudrait que tu ajoutes un contrôle via une routine comme ci-dessus interceptant la validation du formulaire.
A moins qu'il y ait un moyen de contrôler mieux l'action de Pattern...?
Mes maigres connaissances ne sont pas capables de te dépanner plus:
Appel aux experts...!