\DeclareOption{francais}{
\RequirePackage{babel}
}
Ne faudrais-t-il pas rajouter un test du genre
Si babel n'est pas chargé avec l'option francais,
Alors le charger
D'autres part, la fonction \RequirePackage indique juste que le package est requis, mais ne le charge pas, si mes souvenirs sont justes.
Pour finir, ce genre de subtilité doit être abordé dans le LaTe
Forum:
Développement