For me (Windows/Activestate 5.8) it doesn't. If "main" calls "package" and "package" uses the filtering module, (caller( 1 ))[0] returns not "package" but "main".
I've found a poor work around that involves "use myFilter __PACKAGE__;".
Thanks, Fletch! --- it seems to be (caller(1))[1]!