SQL Server Schema Security
That's because you also need to grant the CREATE TYPE permission on the database to the particular principle(s). 

Please see this BOL reference on CREATE TYPE:


  Requires CREATE TYPE permission in the current database and ALTER permission on schema_name.


grant create type
to [U];
go