Okay, here's a rough how-to that I use to install PHP in IIS 6... feel free to skip over steps you're positive you've already done (correctly)...
1. On the directory that you installed PHP in (D:\php\ for me), make sure that either:
a. "Everyone" or a group that contains the IUSR_ComputerName account has Read & Execute permissions (giving it Full Control would definitely do the job)
b. You specifically add the IUSR_ComputerName account to the ACL (properties of PHP folder, Security tab) and give it full control. To make sure this applies to everything inside, before you hit apply & OK on the properties window, click on the Advanced button (off of the Security tab) and choose the second box "Replace permission entries on all child objects..."
2. I don't remember my reasoning, but I coped the php4isapi.dll into the root of the PHP installation folder (i.e. from D:\php\sapi\ to D:\php\)... couldn't hurt at any rate.
3. In IIS Manager, open up Web Service Extensions and add a new extension. The name can be something like PHP, and for the required files, click the add button and browse to the ISAPI .dll (D:\php\php4isapi.dll for me). Make sure you tick the "Set extension status to Allowed" checkbox in that dialog before you hit OK.
4. Expand the "Web Sites" folder in IIS Manager, and go to the properties of your site (if you have multiple sites... repeat these steps for each site).
a. On the ISAPI filters tab, click Add. Again, filter name can be something simple like PHP. The Executable field should again be the same path to the .dll as above. Then hit OK.
b. On the Home Directory tab, make sure "Execute permissions" is set to Scripts only. If Application pool is something other than DefaultAppPool... tell me what it says.
c. On that same tab, click the configuration button located to the right of the Execute permissions drop-down.
i. Click the Add button, and type in .php for the extension. Executable... recognize that? ;) Browse to the same .dll once again.
ii. Make sure you leave Verbs to All verbs.
iii. Make sure both checkboxes at the bottom are ticked, and hit OK.
iv. On the mappings tab, my webserver has "Cache ISAPI extensions" checked. Couldn't hurt... unless you're running out of RAM/CPU or something.
v. Hit OK again
d. Hit OK on the properties screen.
5. ***RESTART IIS***
6. That should be it!