Hi Cyprien,
I used to switch a lot between English and German layouts, I mean the standard QWERTY and QWERTZ ones, and it wasn’t a big problem, even for punctuation. Somehow, the hands can switch mode along with the head. But it took some time, of course, and the less-used keys like + @ etc. took much longer to learn.
You know that you can switch between layouts with a keystroke combination, don’t you? It’s not very comfortably set up on the Mac, as one has to remove or change the shortcut for Sherlock first, but after that’s done, it works nicely.
Still, recently I got tired of switching keyboard layouts—or maybe rather of always having to check which keyboard is active before starting to type. So I built in a dead-key sequence for the German letters into a QWERTY layout, using the extra key (§) on ISO keyboards followed by ' ; [ to get ä ö ü. Note that ' ; [ are the keys where those letters are on the QWERTZ layout—this way I don’t forget their places, which is useful for when I’m typing on other computers.
But let’s talk about your keyboard layout:
For your situation, I think US International is indeed a good layout to start with.
(I don't like having to type quote+space for every quote and apostrophe, but I guess one gets used to that, too.)
For French, I think it’s a good solution as is, but for German you really need something easier. And as you don’t type German on other computers, you’re basically free to put the special characters anywhere. One idea is to assign ä ö ü to the [ ] \ keys and Ä Ö Ü to the matching { } | keys.
Then you have to think where to put [ ] \ { } | of course. If you don't use typographic quotes, you could have [ ] etc. on the same keys as before but move them to the levels with Option. For example [ would then be Option-[ and { would be Shift-Option-[
If you do use typographic quotes and want to keep them where they are, you could move [ ] \ { } | to the CapsLock level. For example [ would then be CapsLock down + [ and { would be CapsLock down + Shift-[
The ß is on Option-s, which you may want to move to Option-d to fit in with Colemak.
It all depends on you, thanks to Ukelele :)