My guess is that you are getting a MULTILINESTRING EMPTY returned to you, which is a valid geometry, just an empty one. Back when I did ArcObjects programming, the Intersection method had a third parameter that specified the dimension of the product you wanted returned. With your example, asking for a point would return the point you seek while asking for a line would return an empty multilinestring. Looking at the geometry engine documentation, that doesn't appear to exist anymore. I will have to think about how to work around this.
... View more