Vielleicht geht es so:

utils.js - zusätzlicher Übergabeparameter “icon”:

function addMarker(layer, lon, lat, popupContentHTML, icon)

Diese Zeile aus utils.js löschen:

var icon = makeIcon('/extern/steinkohle.png', 32, 32);

und in markers-test.js oder direkt in der html-Datei

var icon1 = makeIcon('/extern/steinkohle.png', 32, 32);
var icon2 = makeIcon('/extern/braunkohle.png', 32, 32);

usw. vor dem jeweiligen addMarker-Aufruf einfügen und dabei icon1 usw. als zusätzlichen Übergabeparameter anhängen:

addMarker(layer1, lon1, lat1, popupContentHTML1, icon1);
addMarker(layer2, lon2, lat2, popupContentHTML2, icon2);