You're correct. 2 weeks starting, 3 after 7 years, 4 after 14 years.
The 5th week is great for the guys already there, but how much would someone just starting make in 20 years if their holiday/personal time paid the same as vacation?
If the company is going to pick just one, the 5th week at 21 years is a no-brainer. Much less to pay out.
If I had my druthers, I'd eliminate the bonus and make it a raise. That'll never happen, though, because when it was brought up to a manager, the answer given was, and I quote, "We can't take raises back."