randomuser SHOULD be right, but there is a bug in some intel motherboard EFI firmware where the board boots from /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi no matter what the data in NVRAM.
A workaround is to rename /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi, then re-run efibootmgr and reconfigure grub. Here is a script to run as root. Before you run it, check to see if your drive is /dev/sda, your partition is 1, and a new boot-entry for Windows should be 6. After you run it, edit /boot/efi/EFI/fedora/grub.cfg, and change the Windows chainloader entry from
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
to
chainloader /EFI/1Microsoft/Boot/bootmgfw.efi
Beware Microsoft's boot recovery tool, it will "restore" the original directory, and break things again. Also, I don't see a way to edit anything in /etc/grub.d or /etc/defaults/grub to prevent this fix being overwritten if you reinstall grub, so be careful of that too.
#!/bin/bash
echo cd /boot/efi/EFI
cd /boot/efi/EFI
echo tar -zcvf /boot/efi/EFI/microsoft_efi_boot.tar.gz /boot/efi/EFI/Microsoft
tar -zcvf microsoft_efi_boot.tar.gz /boot/efi/EFI/Microsoft
echo mkdir -p /boot/efi/EFI/1Microsoft
mkdir -p /boot/efi/EFI/1Microsoft/Boot
echo mv /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi /boot/efi/EFI/1Microsoft/Boot/bootmgfw.efi
mv /boot/efi/EFI/Microsoft/Boot/bootmgfw.efi /boot/efi/EFI/1Microsoft/Boot/bootmgfw.efi
echo efibootmgr --create --write-signature --label Win7 --disk /dev/sda --part 1 --loader '\EFI\1Microsoft\Boot\bootmgfw.efi' --bootnum 6
efibootmgr --create --write-signature --label Win7 --disk /dev/sda --part 1 --loader '\EFI\1Microsoft\Boot\bootmgfw.efi' --bootnum 6