Is there an iPhone application that can play music from arbitrary shoutcast server?
TuneIn Radio will let you add custom URLs (including ShoutCast server URLs) to your bookmarks list and stream from them. It will also keep your playlists in sync across multiple devices, record streams for, find local streams using your current location and more. You but it the app store. And when you're at your Mac, you can use their browser-based desktop app to keep listening and access your bookmarks.

To add a ShoutCast server as a custom URL use:

ipaddress:port/stream/x/


Where:


ipaddress is the IP or host name of the machine hosting the ShoutCast server
port is the port where ShoutCast is broadcasting on the server
stream is the name of the stream from ShoutCast
x is the number of the stream


Once you add the custom stream to your bookmarks it should be available from any TuneIn Radio application or their web app.