Unfortunately you can't use this approach to detect intersection of line and arbitrary map shape. The IntersectWithLine is the method of the location rectangle. When you call it you check whether the given line intersects with bounding rectangle (not with the original shape). The original shape can occupy just a small part of the bounding rectangle.
Calculation of the intersection of the line with arbitrary shape (even with arbitrary polygon) is a quite complex geometrical task for which we have not ready for use solution. However I suggest that you search for this in stackoverflow
for example, where I believe you'll find the answer.
the Telerik team