I’ve been struggling to find out why my default SVG icon wasn’t displaying using the example above.
I discovered that the code in your example has a bug in the geoFunc function:
The line
if (geo === undefined) geo = "heart"; // use this for an unknown icon name
Should read
if (geo === undefined) geo = icons["heart"]; // use this for an unknown icon name
Then everything works nicely.