Hi
I guess that your conclusion is wrong that it only works if you install into /home/root. I guess that the recipe works the first time it is built, but if you then change the destination directory it will not work again.
The do deploy task deletes the files after it did copy them. If you then change MERGED_DST and rerun the build the buildsystem will not run the do_fetch task, as no input variables for that task have changed. Then do_install does not have any input files and you end up with an empty package.
If you delete line 15 of the recipe, run bitbake -c cleansstate merge-files
to force do_fetch to be executed and then the recipe works as expected the above assumption would be correct.
Max