When you are receiving content via HTTP, you are always going to get the whole header in a particular format. To set a cookie, you are required to send it as part of this header but before the content type is passed to the browser.
i.e.:
Set-Cookie: blahblahblah
Content-type: text/html
<html>
.....
Where blahblahblah is the properly formatted cookie information. When banner adverts print their info, they do something along the lines of (but possibly not exactly - hey its only an example :P)
Set-Cookie: blahblahblah
Content-type: image/gif
....
<data>
Although the cookie section is not part of the HTTP spec (according to my O'Reilly book) - everyone uses it (as we all well know :P).
So if you want to do something after the page has been displayed, you're best bet is to have a perl script that delivers a blank image with the cookie as part of its transaction to the browser.
i.e:
<img src="http://www.mysite.blob/cgi-bin/imager.pl?IMAGE=one">
As far as I know - this is the only way you can have cookies from one site set by another (by the second site including that image).
Hope that helps - if not - reply and I'll see what I can do :)