Consider the following:
An Exchange Dynamic Distribution Group has a valid recipient filter, and the filter generates the desired resultant set of recipients with the following PowerShell command:
Get-Recipient - RecipientPreviewFilter $(Get-DynamicDistributionGroup "name").RecipientFilter
However, when a user sends a message to the group, no messages are delivered, and the sender does not receive an NDR.
One possible cause of this issue is a property of the dynamic distribution group called RecipientContainer. This is similar to the SearchBase attribute of the Get-ADUser cmdlet: it specifies the container in which to apply the RecipientFilter. Therefore, the RecipientContainer must be the OU (Or a parent of) in which the desired users are stored.
More info here: https://www.corelan.be/index.php/2008/11/05/dynamic-distribution-lists-not-working-as-expected-0-recipients-during-mail-routing/