Since the mappoint does not have not anything for ferry (as least as far as I know) I have come up with this trick:

Private Sub CommandButton1_Click()

Dim oApp As MapPoint.Application
Set oApp = CreateObject("MapPoint.Application.NA.17")
oApp.Visible = True
Set objMap = oApp.NewMap
Set objRoute = objMap.ActiveRoute
On Error Resume Next
szZip1 = Worksheets("sheet1").Cells(5, 2)
szZip2 = Worksheets("sheet1").Cells(6, 2)
On Error Resume Next
'Add route stops and calculate the route
objRoute.Waypoints.Add objMap.FindResults(szZip1).Item(1)
objRoute.Waypoints.Add objMap.FindResults(szZip2).Item(1)
objRoute.Calculate

Worksheets("sheet1").Cells(12, 2) = objRoute.Distance

Worksheets("sheet1").Cells(5, 2) = objRoute.Waypoints.Item(1).Name
Worksheets("sheet1").Cells(6, 2) = objRoute.Waypoints.Item(2).Name

For i = 1 To 100
Worksheets("sheet1").Cells(i + 25, 1) = objRoute.Directions.Item(i).Instruction
Next i

Dim objApp As MapPoint.Application

objRoute.Clear
objMap.Saved = True

As you see all route direction goes into A26 to A126 asuming hundred lines would be enough. Then I add this formula into another cell:
=IF(ISNUMBER(MATCH("*check timetable*",$A$26:$A$126,0)),"this route requires ferry","")

And this is it. Done.