In regards to streaming via 802.11g, I've never had an issue with any of my media boxes. Running tomato firmware on two buffalo routers, with one setup behind my TV as a wireless bridge. Everything (xbox 360, wdtv live, apple tv) is hardwired into the bridge, with the bridge connecting to my main router via 802.11g. Make sure you don't have any frequency conflicts in your access point (like your neighbors all stacking on the default channel, usually 6 i think).
That being said, what's the CPU doing when this happens? apt-get install top
What OS / Hardware are you using for your Samba server? I noticed you mentioned PS3 before. Were you running a transcoding server? Your media share isn't slammed is it? You can get some throughput measurements on your samba share by installing samba and using smbget.
Getting samba packages:
echo "deb http://tom.zickel.org/samba ./" > /etc/apt/sources.list.d/zickel.list
apt-get install samba
After it installs, go over to /private/var/tmp (so you don't fill up root) and try downloading something with smbget from your samba server.
smbget smb://NETWORKSPACE/openshare/Videos/Films/Sci\ Fi/the.matrix.1999.dvd9.720p.hddvd.x264-hv.mkv
As the movie is downloading, smbget will tell you the transfer rate. Note however, smbget says its telling you Mb/s when in reality its showing MB/s. It may take a minute or so for the numbers to stabilize, but tell us what you get. Just "ctrl-c" to stop the smbget and rm whatever file you downloaded once you're comfortable its a stable reading.
All that being said, this is my first round w/ Apple/iOS/Mac/Jailbreak stuff and its been a long time since I've messed with XBMC. Once I finally figured out how to open a f'n shell terminal in OS X I felt at home! Props to the XBMC team for throwing this together! Just a grungy old UNIX guy...