FogBugz & Scrum work together adequately. I think you're questions are good ones so I'll stick to answering thosse...
How do we prioritize a large backlog with only the 7 priority levels provided by Fogbugz? We can modify the database tables to add more levels, but is that an appropriate in the current/intended Fogbugz model?
IMHO 7 is too many to manage, I find that the top 3-4 are manageable and beyond that I might as well lump everything into a single "later" backlog. However, FogBugz documentation or KB articles occasionally give guidance to people who have added additional priority levels, so if FogBugz doesn't intend for you to use it they seem to be well aware of it and basically support people doing it.
How/where do we document a sprint goal?
We have a "sprint review" page on the wiki for each project. We document the most recent sprint at the top and make it one huge page (although I imagine we'll eventually keep only the most recent year or something, as those pages are getting HUGE). The sprint review we use is simple and has a set of fields that must be completed by the team and the PM.
Before the sprint we document a goal and and the SBL, after we add the fields for the review.
How do we document a canceled sprint?
In the sprint review page mentioned above.
How do we document sprint review?
How do we track completed or canceled sprints?
I imagine you can guess how we deal with those two by now :)
I hope that is helpful to you and others reading. We do have a couple fogbugz hacks related to FB estimates that I haven't gone into here, but if you want to discuss any more I'll be happy to do so. Maybe you have some experiences to share that I could learn from?
-scott