Agrobert, the only suggestion I would make is that the oxygen assits in the inital attack. The intermediate is then an oxocarbenium ion instead of a carbocation.
Spirochete, that is similar to what I said about the hetero-Diels–Alder, so I think it is quite possible.