There was a problem with the original code you pasted which I didn't spot.
I did some debugging on your site and then realised the value of the taxonomy fields are an array (with a number value) and not a number, so a small tweak to the code has fixed it.
For reference the full code is like so:
/* TASSONOMIE OBBLIGATORIE IN AGGIUNGI CREATURE */
add_filter('cred_form_validate','func_validate_taxonomy_select',10,2);
function func_validate_taxonomy_select($error_fields, $form_data)
{
//field data are field values and errors
list($fields,$errors)=$error_fields;
//validate if specific form
if ($form_data['id']==348)
{
//check my_field value
if ($fields['creatura-sesso']['value'][0] == '0')
{
//set error message for my_field
$errors['creatura-sesso']='fai una scelta';
}
//check my_field value
if ($fields['creatura-specie']['value'][0] == '0')
{
//set error message for my_field
$errors['creatura-specie']='fai una scelta';
}
//check my_field value
if ($fields['creatura-vita-assieme']['value'][0] == '0')
{
//set error message for my_field
$errors['creatura-vita-assieme']='fai una scelta';
}
}
//return result
return array($fields,$errors);
}