Technically, I would agree with you. However, it's really up to the umpire. Yes, he took a couple steps, but in real time, he's hitting that wall in a second or less after making the catch. If the umpire interprets that as "immediately following his contact with the ball", they might not rule it a catch. Most probably would give it to him, but some might not. The big factor here is that he had the presence of mind to transfer it to his throwing hand. IIRC, there was a play several years ago when Dave Martinez was still with the Cubs, where he made a great catch, slammed into the wall, fell down, and didn't get up. The ball actually stayed in his glove as he was motionless on the ground. I believe Dawson removed the ball from Martinez' glove and because of that, they ruled it a non-catch.