Android Custom marker icon
With the new Maps Api Setting the Icon for a Marker is done with the following Code:
MarkerOptions markerOptions = new MarkerOptions().icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_location));
The icon can not be changed after a Marker was created. To change an icon remove the marker and readd it with a new image.
OverlayItem.setMarker
seems like the method you're looking for.
Note that there is (or used to be) a gotcha you need to be aware of; you first need to use Drawable.setBounds
to set the visible boundaries of the drawable before it can be rendered properly. Some fiddling might be needed to get it to centre; see this answer.