I am not sure I understand what you are trying to do here. Could you include a small diagram or text with which subnet should be allowed to which subnets and which should be blocked ?
Since you are not using any QOS specific features, but only the filter commands, I would not use the QOS policy for the packet filtering, but simply define 1 ACL with permit/deny rules, and use the "packet-filter" command on the interfaces.
Also note that in your example, you seem to be using acl 3001 to filter traffic. Now since this uses the qos classifier, you have to make sure the traffic is "selected" for the classifier, so in the ACL you must PERMIT the traffic (so it is matching the classifier), next the QOS policy will apply the FILTER DENY on the selected (permitted by the ACL) traffic.
In the current example, no traffic would "match" the acl 3001, so it would not get filtered ...
(I know this is confusing, this is why the packet-filter command is preferred, when available)
Hope this helps,Peter