It's little bit difficult to investigate your issue without having your data.
Could you attach your packaged workbook(***.twbx)?
If the data is confidential, sample data is enough.
As of my understanding, a dynamic Set
using an Aggregate Conditional Filter would work.
In essence, it is just a conditional filter on Customer ID,
where the condition is an Aggregate calculation --
a SUM() of 1's calculated for each row in a datasource
where Order Date is in the same Month as a Parameter.
Of course, it could be MIN or MAX or any other suitable aggregation.
The Aggregate Condition translates directly to the HAVING clause
of the SELECT statement to the underlying datasource.
I found this technique one of the Tableau' hidden gems since it's inception.
It could be broadly applied to a range of useful analyses,
such as recommendation, market basket and cohort ones
(the latter is your case I hope).
Please find the attached sample workbook.
Hope it could help.
Aggregate_Filter_Set_YF.twbx 1.2 MB