This is only an attempt to answer the question, **if** I understood it correctly. You want to *"cover the actual road connection between cities (...) based on the GoogleMap"*.

**First step**: find the coordinates of the two cities you want to use as *edges* in your graphic:

    c1 = CityData["Uppsala", "Coordinates"]
    c2 = CityData["Marsta", "Coordinates"]

> {59.86, 17.64}

> {59.63, 17.84}

**Second step**: define the center of the map:

    center = (c1 + c2)/2

> {59.745, 17.74}

**Third step**: `Import[]` the actual Google Maps image based on the center you've specified

    Import["http://maps.google.com/maps/api/staticmap?center="<>ToString[center[[1]]]<>"," <>ToString[center[[2]]]<>"&zoom=10&size=400x400&sensor=false&maptype=roadmap"]

![enter image description here][1]

I'm still wondering what exactly you want with *"set the calculated distance as EdgeCost value of created edge"*...

  [1]: https://i.sstatic.net/NszUF.jpg