My personal experience is the the firmware of the Wavelan is not very happy when switching on the fly from managed mode to ad-hoc mode so close to the card initialisation (so, in essence triggered via wireless.opts).|
On the other hand, all other operation seem to work fine. So, set ad-hoc mode in config.opts by default, and use wireless.opts for all others and to switch to managed mode. That might work better.
Please tell us if it help...