Try changing the order to
Code:
if header :contains ["From", "X-Mail-from", "Return-Path"] "xxxx.da.gov" {
fileinto "INBOX.cdrom";
reject "Message rejected because Invalid Email Recipient";
stop;
}
Maybe, sieve processing terminates after the reject. This is especially true as the standard recommends that the reject occur at the SMTP stage (while sieve normally occurs later). FastMail may well have logic that attempts to conform with that standard.