@epchris I think the question wasn't WHEN or HOW to use them, but that like your Document example.. most of the reasons to use them are because you're adding functionality to a class that you can't directly change. so you can't exactly put your extension function IN the file containing the class. And that if you could change the class directly, you just.. would.
Hence Ulf's suggestion