I don't think I will make a plugin for it, but maybe I can help you out a bit.
I don't have any problems getting the now playing info in EventGhost using this macro:
<?xml version="1.0" encoding="UTF-8" ?>
<EventGhost Version="1600">
<Macro Name="Get currently playing station/title" Expanded="True">
<Action>
RadioSure.GetPlayingTitle()
</Action>
<Action>
Speech.TextToSpeech(u'VW Bridget', 0, u'{eg.result}', 0, 100)
</Action>
</Macro>
</EventGhost>
Does that not work for you?
I have also create some VC commands that will allow you to automatically create a payloadXML file for your favourites and then play them by name. You will need to modify the paths to the radio sure executable and the radio sure xml file for this to work:
<?xml version="1.0" encoding="utf-16"?>
<commandGroup open="True" name="radio sure" enabled="True" prefix="" priority="0" requiredProcess="" description="">
<command id="169" name="play radio station {1}" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Window.Close</cmdType>
<cmdString>radiosure</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Launch.RawParam</cmdType>
<cmdString>D:\radiosure\RadioSure.exe&&/source="{1}"</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<phrase>play radio station</phrase>
<payloadFromXML phraseOnly="False" use2partPhrase="False" phraseConnector="by" Phrase2wildcard="anyone" optional="False">radfavs.xml</payloadFromXML>
</command>
<command id="229" name="update radio sure favourites" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Scrape</cmdType>
<cmdString>D:\radiosure\RadioSure.xml</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<cmdString><Favorites>(.*?)</Favorites></cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<cmdString><Source>(.*?)</Source><Title>(.*?)</Title>&&---&&{Match.1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>OSD.ShowText</cmdType>
<cmdString>{LastResult}</cmdString>
<cmdRepeat>0</cmdRepeat>
</action>
<if ifBlockDisabled="False" ifNot="False">
<ifType>(A)<(B)</ifType>
<ifParams>0&&{#M}</ifParams>
<then>
<action>
<cmdType>TTS.Speak</cmdType>
<cmdString>I am storing {#M} stations in your payload x m l file</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>PayloadXML.Clear</cmdType>
<cmdString>radfavs.xml</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.MatchToEvent</cmdType>
<cmdString>Rs.AddFav&&99</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>VC.RestartQuick</cmdType>
<cmdString />
<cmdRepeat>1</cmdRepeat>
</action>
</then>
<else>
<action>
<cmdType>TTS.Speak</cmdType>
<cmdString>Sorry, there seems to be a problem.</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
</else>
</if>
<phrase>update radio sure favourites</phrase>
</command>
<command id="230" name="adfav" enabled="true" alwaysOn="False" confirm="False" requiredConfidence="0" loop="False" loopDelay="0" loopMax="0" description="">
<action>
<cmdType>Results.RegEx</cmdType>
<cmdString>(.*?)---&&&&{1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.SetVar</cmdType>
<cmdString>val&&{Match.1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>Results.RegEx</cmdType>
<cmdString>---(.*)&&&&{1}</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>PayloadXML.AddPair</cmdType>
<cmdString>radfavs.xml&&{Var.val}&&{Match.1}&&True</cmdString>
<cmdRepeat>1</cmdRepeat>
</action>
<action>
<cmdType>OSD.ShowText</cmdType>
<cmdString>{Match.1}</cmdString>
<cmdRepeat>0</cmdRepeat>
</action>
<event>Rs.AddFav</event>
</command>
</commandGroup>