I think there's nothing wrong with the "When you gain this" clause, so much as that it doesn't allow for much strategizing. For most of the usual buy decisions you're likely to encounter, it's an easy decision:
* If you have $8, buying a Province is a no-brainer, because you get 6 VP, which would be the same number as your card and a Duchy (which is what you're going to get from this card 99% of the time).
* If you have $6 or $7 and you're interested in having a Duchy, you buy this card and gain a Duchy. It clogs up your deck a little more than if you just bought the Duchy outright, but if you're in the part of the game where you're buying Duchies, you don't care. Because either it's so close to the end of game that you won't suffer from the deck clog anyway, or you're rushing Duchies, in which case you still don't care about deck clog, and buying your card drains the Duchies just as fast but with more points.
* If you have $6 or $7 and you don't want a Duchy in your deck, you don't want this card in your deck either.
Off-hand, I'm not sure how to balance the numbers out so as to provide better strategic possibilities, but one idea that comes to mind is to just make your card worth only 1 VP. A card worth just 1 VP but costing $6 is an attractive target for trash-for-benefit cards. Additionally, the lesser point value might make you sometimes prefer Duchy over your card + Duchy when you have $6 or $7. Particularly in rush strategies: if you're rushing Duchies and WANT to clog your deck at 3 VP per card, you don't mind taking your card + Duchy when possible. But if your card is only worth 1 VP, maybe you'd still rather just buy a Duchy.
Like I say, I don't know if this completely fixes the idea. It's just a top-of-my-head thought. But I do think the idea itself is probably good in some form or other. Running this contest has really helped me realize anew how very small, very subtle balance tweaks can make or break a card.