I can't for the life of me see anything wrong with:
Message-ID: <[EMAIL PROTECTED]>
It looks to me like 2822 sez:
First, I'm assuming that line break before the < is an artifact of your mail client, and isn't in the real message. (This is one reason why copy-pasting bits of spam into a message body make analysis difficult)
Looking at the rule I can't see why that message ID would match the rule in SA 3.0, but I don't have my test box handy at the moment.
Is there any chance there are line breaks, or non-ascii chars in the middle we can't see here?
header __SANE_MSGID MESSAGEID =~ /^<[^<>\\ [EMAIL PROTECTED]<>\\ \t\n\r\x0b\x80-\xff]+>\s*$/m
header __HAS_MSGID MESSAGEID =~ /\S/
header __MSGID_COMMENT MESSAGEID =~ /\(.*\)/m
meta INVALID_MSGID __HAS_MSGID && !(__SANE_MSGID || __MSGID_COMMENT)
describe INVALID_MSGID Message-Id is not valid, according to RFC 2822