Two things:
- Reds have said that you have to have completely clean games so think of games like this:
Games are rated 0 to 10
0 = your behavior was not toxic
1, 2, 3 = your game was mildly toxic but not toxic enough for another punishment
4, 5, 6 = your game was toxic to get a chat restriction
7, 8 = your game was toxic that it deserves a temp ban
9 or 10 = your game was so bad it had to be reviewed manually and possibly end in a permaban.
If you get reported and you are rated 0 in toxicity, you're totally fine and you will progress in honor and get out of dishonorable.
If you get reported and you are rated 1-3 in toxicity, you will be slowing down your progress because you have demonstrated you are still toxic and it will take longer to get out of dishonorable.
Reds have said that the way to get out of dishonorable isn't to get honors, but to not be flagged as dishonorable. It doesn't matter if you're getting honors from teammates because some people will honor just for the sake of getting full team voting honor bonus. The checkpoints are to let you know you have been progressing out of dishonorable. If you aren't getting any of the checkpoints and you aren't getting punished again, it means you're getting reported in games and your games are being reviewed and found to be slightly toxic but not toxic enough for another punishment. This is what gets a lot of people because it's not explicitly explained in the reform cards or in the user interface and is only found from searching the forums.
- Reds have said on average, after a 2 week ban, it takes on average approximately 3 months to get out of dishonorable. Again this is something that is found by searching the forum posts.