Unlike 'use by' dates (which warn of potential health hazards if they're exceeded), 'best before' dates simply indicate that the quality might be degraded after that date. So you won't die if you use the eggs.
However, eggs which are 3 weeks beyond their 'best before' date aren't going to be particularly tasty. Crack one open and sniff to see if there's any hint of hydrogen sulphide. (Even if you've never smelt hydrogen sulphide you'll know it when you encounter it. It's one of the foulest smells known to man and, incidentally, an extremely toxic gas). If there's not, you could use the egg in something which will end up being nothing like an egg (e.g. in cakes) but it would probably still be best not to use it for anything actually 'eggy' (such as fried eggs, omelettes, etc).
I'd happily use eggs (in 'non-eggy' things like cakes) for a week or two after the BBE date but three weeks is (to use a horrid American phrase) 'pushing the envelope' a little.
Incidentally, I normally don't like eggs in their 'basic' form (e.g. fried, scrambled, or whatever). But I've occasionally had a traditional English breakfast which has used eggs laid within the past few hours. The eggs then taste completely different (and absolutely wonderful). Any egg more than a few hours old is probably already 'past its best'.
Chris