If it now works OK, you can narrow it down from there. There are tricks that can be put in the player to defeat caching, like adding random numbers to the end of the string that fetches the JSON, Google that.
OR
Just use a widget or code snippet that gets its data from Icecast. This is what Winamp is doing. They are available for free. Google Icecast2 players.
It looks like you're new here. If you want to get involved, click one of these buttons!