How do I follow up with a potential PhD supervisor?
PhD supervisors are generally quite busy, particularly, if they have multiple PhD students, and courses to coordinate. So if he said 3 weeks and has failed to get back to you then it is likely that he has been busy.
Wait for a few days, and then politely send him an email requesting an update on the status of your application. Let him know that you are looking forward to the next meeting and are keen on working with him.
Also continue to look at his group's website, if any. Many times, after having been ignored by the potential supervisor, I have found new students on their website, indicating that my application has been rejected.
It is an impolite world, it is not necessary that the supervisor or for that matter anyone in academia shall get back to you, particularly from top universities who receive bucketloads of emails every day. For example, one of my supervisors used to ask his research assistant to man his email account with instructions to ignore emails with 'certain' characteristics.
In your case, the potential supervisor seems to be interested in your application and it is highly probable that he will respond.
Best of luck!