We managed to get through to the CIC call centre today. The agent was helpful, she said that they should have updated the exam result but hadn't, and that's probably why we didn't receive an oath invite. She said she would send an internal email to the Montreal office to get them to look into this and get the exam results added, and get us an oath invite. She said it was good we called because otherwise we would have just continued to wait... will let you know when we hear more.
So far the lesson is: the webform is useless, because we provided the same information in the webform and got a form letter response.