Los controles del marcador:
   
Código Javascript
:
Ver originalvar imagen = new google.maps.MarkerImage(
      'imagenes/images/marker.png',
       /* La ruta donde se encuentra la imagen. Puede ser absoluta o relativa a la posición de la página. */
      new google.maps.Size(32, 32),
       /* El tamaño de la imagen completa después de la escala, si se redimensiona. Utilice esta propiedad para ampliar o reducir una imagen. */
      new google.maps.Point(0,0),
       /* La posición de la imagen dentro de un sprite, si los hay. Por defecto, el origen se encuentra en la esquina superior izquierda de la imagen (0, 0). */
      new google.maps.Point(16, 32),
       /* La posición en la que anclar una imagen en correspondencia a la localización del marcador en el mapa. Por defecto, el ancla está situado a lo largo del punto central de la parte inferior de la imagen. En el caso de la bandera, se situa a la izquierda, abajo */
      new google.maps.Size(20, 32)
       /* El tamaño de la pantalla del sprite o imagen. Al usar sprites, debe especificar el tamaño de sprite. Si el tamaño no se proporciona, se establece cuando se carga la imagen. */
    );
  
Ello te permite, conjugamdo los términos, dar márgenes y sombras. 
Si desean incluir sombras es algo parecido:   
Código Javascript
:
Ver original/* Los controles sobre la imagen de sombra (shadow) son igualesa los del icono de marca */
    var sombra = new google.maps.MarkerImage(
     'imagenes/images/marker.png',
      new google.maps.Size(37, 32),
      new google.maps.Point(0,0),
      new google.maps.Point(0, 32),
      new google.maps.Size(37, 32)
  );
  
Y después:   
Código Javascript
:
Ver originalvar marker = new google.maps.Marker({
    position: latLng,
    map: map,
    title: 'Mi marcador',
      /* Aparece como título al dejar el puntero sobre el icono-marcador */
    icon: imagen,
    shadow: sombra
  });
  
La documentación en 
https://developers.google.com/maps/d...reference#Icon