If you do e.g. .Assert( x => x.CustomAssertion( y => y.FindElementsByCssSelector( "i am not a valid selector" ).SomeAssertion() ) ) then Xenon will keep trying (courtesy of WaitUntil in BaseXenonTest) until the configured wait time expires. Obviously, it will never work so this is pointless.
WaitUntil should catch these specific terminal exceptions first and bail immediately before swallowing generic ones and retrying (see line BaseXenonTest line 29)