To je nějaká divná historka. Přepsání metody Equals samo o sobě nijak neovlivní chování operátoru ==. Pokud někdo napsal operátor == tak, že jenom volá to Equals na levém objektu, pak to ovšem chcípne na NullReferenceException (ve tvém případě nullového myArgument; ostatně Equals(null) musí vždy vracet false). V nějakém složitějším případě je pak chyba někde jinde.
Každopádně takováhle implementace Equals je blbě prostě proto, že to neplní kontrakt metody Equals, protože nikdy nevrátí true, které je však povinnou návratovou hodnotou pro x.Equals(x).