Okay, I see, the default Beggar Gardens always keeps a Beggar in hand, so it can gain 3 coppers. Changing it to reveal all the time still only gives it a 40% win rate in my simulation, though.
The loss situation for the Pin is when a 3 pile happens while B/G has a deck still containing Gardens. Pretty much, that's when B/G buys out Copper and has already bought out two of Beggar, Gardens, Duchy. B/G always gets "pinned" before the 3 pile happens, but still manages in some situations to buy out Copper.
The version of Quarry Pin I used has Chapel removed. Otherwise, it can beat Double Mountebank(this was why Chapel was added to the original)
I'm starting to lose track while testing, but another change was having Pin buy a Copper when it has exactly 6 cards in deck. This counters a specific side case where we draw KC/KC/Masq with Goons in deck and decide to triple Masq, defaulting to trashing everything since the Pin is "on", and passing the last card in the deck, Goons.
I'm sure the better way is just to put a condition on trashing/passing with Masq i.e. don't do it when Goons is in hand, KC/KC/Masq is in play, and there's only one card in hand other than Goons. But for some reason, I can't get the wording right.
Also, I've upped Double Mountebank's odds against the pin by turning it into Always Mountebank(no restriction on the number of Mountebanks). Wins about 92% of the time against Pin, and loses... I think it's pretty safe to say 100% of the time against Beggar Gardens. 12407 games and it still hasn't won even one.