I have set up a number of coupons to members. One coupon is actually for a full price discount, leaving their payments at $0.
These members have been expiring and in fact, there is one in the expired section of the "all members" section right now.
I believe their accounts are expiring because M2P is waiting for PayPal to ping back with a successful payment, but it doesn't.
As we spoke on chat and this issue exists cause PayPal doesn't accept $0 payments, however, a coupon for the full price off of a membership should be possible without a workaround.
Creating Free membership for X amount of days it's cumbersome solution, because when a client makes any change to the Premium membership, he will also have to double the work he is doing, and also update the Free membership.