Here would be my proposal.
1st Time Offender: All years left on the contract are reset to league minimum, with the team still on the hook for the rest of the money, donating it to charity instead of giving it to the player. The player will also have a salary cap for future salary (3 million a season), never be allowed to make it to the hall of fame, and not be allowed to make any future all star teams. He will also have all past, present, and future records set eliminated from the books. Fine the player 15% of what he has earned in his major league baseball career.
2nd Time Offender: Lifetime ban. Donate all money owed to charity. Fine an additional 15% of what he has made in his career.
The severity of this punishment is easily enough to scare any player and agent into not using PED's, and allows Bud Selig to lay down the law.
If you are reading this in an email, you may need to go to the site to watch the video.