The IsoDateTimeConverter produces date strings like the following:
If you consume the JSON that includes these time strings in the browser and attempt to parse these date strings with new Date(), the first one will parse fine cross-browser. However, the second one will fail in IE9, saying "Invalid Date," because
it requires 3 digits in the milliseconds place of the string:
Open that in IE9 and you'll see the first 3 entries parse out as Invalid Date. In IE10 and Chrome, they parse just fine.
Screenshot of IE9 failing to parse most date time strings attached.
An easy fix would be to format the milliseconds portion with 3 digits regardless of how it rounds.