Yes, if the email address is invalid, the feedback message is still sent, but the email is not used as the 'From' address on the message. I believe this is sensible behavior because (in my experience) it is more important to get feedback from your users than make sure that they enter their email correctly.
But you can change this if you like by adding the following:
if ( (!empty($inemail)) && !qa_email_validate($inemail) )
$errors['email']=qa_lang('users/email_invalid');
... after ...
if (empty($inmessage))
$errors['message']=qa_lang('main/feedback_empty');
... and also adding this in the 'email' => array(...) lower down:
'error' => qa_html(@$errors['email']),
[I've not checked this code, so apologies for any errors...]