Is there a good program or tutorial to make such nice coat of arms?
I just use Paint.NET. It's a pretty rudimentary image editing program. The rest is just copy-pasting from Wikipedia and lots and lots of elbow grease.
Paint.net is very good, particularly once you learn how to use layers effectively (I use it a lot). Its limitation is that it's a bitmap imaging program, so as you resize things, they can get a bit blocky or lose resolution. That's fine if you're combining images which are all about the same size, but a problem if the original images are very different sizes. The other problem is that parts of images which are behind other parts just won't be there, so you'll sometimes have to make/draw them yourself.
So it's also worth getting a vector imaging program, such as
Inkscape. You can then resize without losing resolution and usually the different parts of an image are stored separately in the .svg file so you can often extract entire elements (for example, supporters) without any parts missing.
Many images on Wikipedia /
Wikimedia Commons are available both as vector (.svg) files and bitmap (.png / .jpg / .bmp) files.
If you do use parts of images from there, please do pay attention to the licence terms for each. Many are in the Public Domain, but others are licensed using various
Creative Commons licences which require
attribution.