bitcoin address to Hash 160 public key : not consistantly reversible?
Both of those are correct decoding, the difference is the base58check version byte. 


1MCNpVGDY7BGjJyWZL5FJZiaVkQEiuxy8H has a version byte of 0x01 for P2PKH
3MtPk2kf61VepUfwgRjqjC5WeGgxE4rRPS has a version byte of 0x05 for P2SH


Due to it being a hash, only one of these is typically going to have a valid destination, either a pubkey (P2PKH) or a script (P2SH). If money has been sent to both version bytes of the same hash it is very likely that one amount has been lost.