I know it's the current expression but to me it doesn't say "I'm sorry". It says "my bad did it. I'm totally innocent. Don't blame me!"
Even the tone of voice they use when they say it means it doesn't mean a dam thing to them.
Now, if I had my way, when they say "my bad" it would actually mean they got the message as in,
"I sure would like to sit down and talk with you for awhile but "my bad" ass is still hurting from the resounding kick it received from a guy when I damaged his motorcycle."