У меня в safari все норм:
function birthDateToAge(birthDate) {
birthDate = new Date(birthDate);
var now = new Date(),
age = now.getFullYear() - birthDate.getFullYear();
return now.setFullYear(1972) < birthDate.setFullYear(1972) ? age - 1 : age;
}
alert(birthDateToAge(new Date(1986, 2, 3)));
Покажите как запускаете.