Two other experiences in the last year:
- Reloaded Metrocards expiring on 9/30/18 during mid-August 2018. Expected to get new cards issued, but didn't - machine spit back the same cards (as I'd tagged the cards with their balances before!).
- March 2019 - was able to exchange those same expired cards (9/30/18) at the machines at 34th/Penn Sta. Kiosk happily asked if I wanted a new card and did so.
So from above, I guess that the machines will only replace cards within 21 days of expiration, but apparently they will also replace cards for at least six months after they expire, even though the MTA says you need to go to the agent to do this.