I guess it depends. In tournament/league there is code of conduct you should follow. But in a gambling situation, that goes right out the window. I have never seen a game for money where I witnessed a player foul and the player called it on himself. Something else is on the line besides trophies and bragging rights. So unless the the opponent calls it, and there's a witness, it didnt happen. Comes with the territory on this side I suppose, but then you'll undoubtedly will get arguments to follow.
In league/tournament you want your win to be clean as a whistle. In gambling, you're trying to hustle, and calling a foul on yourself is counter-productive. This by no means says you're cheating. It is the responsibility of the opponent to attend to the game. If he didn't see it. His tough luck.