For what it's worth, you often have to wait several seconds to get the more accurate fix. A fix with an accuracy of about 500m often comes immediately, based on cell towers or wi-fi. Fixes more accurate than about 100m require GPS, which takes longer to get. So often you will see "didUpdateLocation" happen immediately with a ~500m fix, and then several seconds later with a 50m fix.
If you go back to your app after you get the 50m fix in Maps, what happens? Do you then get a 50m fix? If not, and you've asked for the best accuracy, then I really don't know what's going on.
Incidentally, how do you know that Maps is getting a 50m fix? Just by looking at the map and gauging it by eye?