Just had the same problem, now it works!
The first precondition is like you have mentioned to "Allow sharing
for users outside
The second is to share your calendar with at least one person (outside
your domain). I went to "share this calendar" tab, typed in my
different (non-google) email address and clicked on "add person".
As I went back to "Calendar Details" tab, new links and buttons at the
bottom of the page magically appeared: Private Address: XML, ICAL,