"Options - Sending Mail - Checkbox 'Suppress BCC listings when sending mail" should be checked!"
Thanks for that - and thanks to all the other people who replied.
Pity that the suppress Bcc option apparently has to be set individually for every user identity in Pegasus - rather than just in the base "default" SMTP identity.
Having switched on Pegasus SMTP logging I believe I now have some understanding of what happens.
On SMTP Pegasus sends a RCPT TO: line for each address in the To: field - followed by a single copy of the body.
It then sends a RCPT TO: line for each address in the Bcc: field. It also includes a BCC: line with all the bcc addresses - followed by a single copy of the body.
Office 365 mail service then seems to treat the multiple addresses in my Demon subdomain as one addressee. It sends only one email for each of the two Pegasus emails sent - rather than a copy for each name. Presumably it is something to do with the multiple addresses on my Demon subdomain being classed as "alias" names in Office 365.
That still leaves the mystery of what happened in my first test when a bcc to a different domain apparently did not arrive.