Step 1: The first thing you want to do is create a simple checker-board pattern using ice and dirt.

Step 2: Now add dirt to the outside of the dirt already in place.

Step 3: Remove all the dirt from the inside of the checker-board.

View from below.

Step 4: Now put torches on the outside like in the above screenshot.

The ice will melt and now you can remove all the dirt.

It's ready...now to add a...

..Boat!

And that's all there is to it. Tip: Never melt two ice blocks that are touching each other (The source water will spill when there is a block update next to it). The first ice would melt just fine, but when the second block melts, the first will spill causing the same of the second block.

Tip: When forming your road to go up or downhill, note that you might make some current by your water placement, making it difficult to go uphill.