Accessing Shape.Properties using CQL?

I would like to use CQL to find shapes based on a custom Property, but I haven't found a syntax that works.

If I set the value for the shape like this:

Shape.Properties("MyProperty", 1) = "foo"

then I can find objects with "foo" for that property by using a classic "for each Shape in ShapeRange" sort of approach, and checking each one like this:

If Shape.Properties("MyProperty", 1) = "foo" Then

Any help on the syntax to use for doing that sort of search using CQL?

I know how to do it for custom ObjectData, but not for custom Properties.