You're right, you should never need a library but just a "sscanf("%04d-%02d-%02d..." ;-)
IMHO needing to handle multiple, possibly obscure, date formats simultaneously is nearly never a problem in practice.