That is not true.
Safari always accepts ALL cookies (and put them in Cache), independent of what privacy setings you had set in preferences, i.e., it disregards whether you set it to block "always", "never" or "from 3rd parties and advertisers".
If you visit a website that requires cookies, the website will detect that Safari rejected the cookie. But, in reality, Safari never rejected the cookie. It simply tells the website it rejected it, but quietly accepts the cookie, and save it in Cache. That is the problem!
You may not see all the rejected cookies showing up during the current browsing session. But if you quit and re-launch Safari, all your blocked cookies will show up, and reappear. They came back alive in the next browsing session.
That is unwarrented behavior is due to 2 causes:
1. Lion preserves the previous state of the app, and pulls all the saved cookies from cache and populates your cookies storage when you re-launch again. That is why they reappear in your next launch.
2. Safari always "enable cache" whenever you re-launch it, even though you had previously "disable cache" from the "Develop" menu (if you had turned on the Develop menu in Advanced mode) in your previous browsing session.
This is caused by 2 bugs in Safari:
1. It should never save the cookies in cache (in the first place), even when you had disabled cookies( by set cookies to be blocked in preferences.)
2. It should never reset and enable cache when you re-launch Safari, even when you had disabled cache before.
Until Apple had fixed these 2 bugs, the workaround is:
1. Close all windows before you quit Safari.
2. Then empty cache befoer quitting Safari.
3. Relaunch Safari, and empty cache immediately.
4. Relaunach Safari one more time.
This will clear all you unwanted cookies and unwanted caches.