One thing first. If you build it with the changes you mentioned above, you should already have that firmware in there. Did you not build it with your changes?
I have
PACKAGES =+ "${PN}-ibt ${PN}-rtl8723b-bt ${PN}-iwlwifi-3168"
FILES_${PN}-ibt = " \
/lib/firmware/intel/ibt-11-5.ddc \
/lib/firmware/intel/ibt-11-5.sfi \
/lib/firmware/intel/ibt-12-16.ddc \
/lib/firmware/intel/ibt-12-16.sfi \
/lib/firmware/intel/ibt-hw-37.8.bseq \
/lib/firmware/intel/ibt-hw-37.8.10-fw-1.10.3.11.e.bseq \
"
FILES_${PN}-rtl8723b-bt = " \
/lib/firmware/rtl_bt/rtl8723b_fw.bin \
"
FILES_${PN}-iwlwifi-3168 = " \
/lib/firmware/iwlwifi-3168-22.ucode \
/lib/firmware/iwlwifi-3168-27.ucode \
"
But after I flash the image on to the USB stick. /lib/firmware does not contain iwlwifi-3168-22.ucode (any iwlwifi 3168).
I believe it is possible to include any file, which is in this repo? git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git