I have the same problem with Excel 2013. Adding the line
$result = chr(239) . chr(187) . chr(191) . $result;
doesn't help. Has anyone an idea how to open the csv-file in Excel with the right character set?
Instead of hacking SMW core it will be more advisable to change settings in Excel. I thing this should do the trick:  (German only :( ). Supposedly newer versions should have similar settings, too. LibreOffice is much nicer in this respect since it politely asks upon import which charset to use.
There is also an new excel format. This may be an alternative too.