Except AOSP doesn't even pass the Android certification [edit: should be compatibility, not certification] test suite, so stage one of building non-Google Android is making AOSP actually work as it should. :(
It's mostly not functionality missing to pass the CTS, but just broken untested AOSP-only code (that is replaced by Google closed source code in Google builds).
These only fail because there is extra unused noop functionality in AOSP that CTS complains about (a bug in AOSP), not because Google services are required to pass CTS.