I guess it depends. If he told you he would ship them out promptly or he runs a business selling parts, a much shorter period is warranted. If the part is particularly delicate and needs some special consideration when shipping (he needed time to find a specific box) or if he told you up front that buying/selling/shipping parts is not his priority, then some slack is warranted.
My guess is that this person falls into the first category since he is giving you excuses rather than just saying outright that he is in no hurry. In that case, you have given him almost three weeks. That seems like enough time.
When I sell on eBay, I ship within 24 hours of payment.
When I sell here, I tell people up-front that if they are on a time crunch they should probably buy from someone else. Why the difference? I usually hope to meet fellow collectors and invite them to pick up items or have them "piggyback" with someone doing a game run through my area. If that doesn't happen, I may have to build a box from scratch for items like monitors or glass bezels which I can only work in on a week end. When I sell on eBay, shipping is assumed so I have shipping materials ready before I even list the item.
I never give people excuses... only facts.