I do something similar for a different application, but it should work for you. But first, why doesn't your smartlist work? I'm guessing that the smartlist wizard isn't translating the part after "is not" correctly. I.E., it's not doing the proper comparison, because the expression isn't being interpreted right.
Doing some testing, I'm pretty sure that the smartlist definition you've written just won't work at all. It has to be written in a funky way sort of like this:
[=isequal([Album],[Artist])]=1
That would go on a "custom" line. That particular expression is testing to see if [Album] and [Artist] are the same. I did that because I knew I'd get a few matches in my library that way. You could *probably* put your test criteria inside the ifequal() clause, but I haven't tested it, so I'm not sure.
In any case here's what I did:
In one of my views, I made a new column called "different". This column tests to see if the filename and my chosen expression are different. If they are, it outputs "Yes". If they are the same, it outputs "No". After adding this column and verifying that it was right, I just clicked on the column to sort by it, which brought all of the Yes values to the top. Voila', I have a list of everything that's not named correctly.
The contents of my "different" column are pretty simple. For your application it would look like this:
if(isequal(filename(,0),[Date (filename friendly)]-[Name]),No,Yes)
Thinking about it, it might make more sense to name this column something like "Needs Rename".
I like the expression column version of this better because it doesn't require any funky syntax (that I struggle to remember every time) and because it's very immediate and easy to work with: refine, test, refine, test, etc. Plus the column can be in a view you work with routinely, so it's obvious if the file name is proper or not. Expression column are a great feature of MC.
I'm sure that's way too much info. Good luck.
Brian.