Depends how you "intercept" the email.
If Outlook is configured to talk to a POP or IMAP server; and your standalone program is going to pretend it is an POP or IMAP server; and Outlook is re-configured to get mail from your standalone app, then it will all depend on what you allow to be visible to Outlook.
If on the other hand, you have your standalone program also be a POP or IMAP client just like Outlook is also a client, then it's depends on whether you are using POP or IMAP. If POP, and you happen to get the message from the POP server first, you can tell the POP server to delete the message. If you get it after Outlook, then it's too late Outlook already has it. If IMAP, then you can tell the IMAP server to delete the message, and it will (eventually) be deleted from Outlook. The only real race condition will be if the user is an old school Outlook user who double clicks on messages (like me) to open the message in a new window. Then no amount of deleting will cause the currently open window to close.
It's also similar to IMAP if Outlook is configured to talk to an Exchange server, but your degree of difficulty goes up dramatically since learning to use MAPI (Mail API) is dying art. It was already obscure enough when MAPI was first created, and it's getting to be a rarer and rarer skill nowadays. I am also guessing that it will also be difficult to write a standalone app that acts like an Exchange server.