Microsoft broke Miracast for Surface Pro (original) users on Windows 8.1. They have not officially commented on this or provided any information on a fix. As pointed out on Twitter by Rafael Rivera, you can work around this by disabling and re-enabling your WiFi connection. Every time you want to use it. Hat tip to Paul Thurrott for letting the Twitterverse know that the Surface Pro 2 firmware and driver pack was available. (Note: there is still no new driver for the Surface 2 so the WiFi toggle is the only option).
Microsoft just released a Surface Pro 2 firmware and driver pack. This is NOT for the original Surface. At your own risk, you CAN download and extract the Marvell WLAN network driver (the chipset in both the Surface Pro and Surface Pro 2 is the same) and fix your issue instead of cooling your heels waiting for the Microsoft Surface team to even acknowledge the issue.
1. Download the file from http://www.microsoft.com/en-us/download/confirmation.aspx?id=40856
2. Drill down to to the x64 folder inside the Marvell\WLAN\win81 folder ..\October2013SurfacePro2.zip\Marvell\WLAN\win81
3. Copy ONLY the x64 folder to another location or folder and rename it so you know what it is. Something like x64Marvell driver would be a good name.
4.Open Device Manager and expand to show the Marvell Wireless Network Controller
5. Right click/press and hold to display Properties and select the Driver tab, then select Update Driver.
6. Browser to the folder where the driver is located and click OK.
7.Windows display the path to the driver. Click Next and it will be installed.
8. Reboot when prompted.
9. If you open Device Manager, you will see the new driver
10. Windows will now find the Miracast device when you select Project. (If you did not try the previous work around of toggling WiFi off and on, you may need to use Add a wireless display the first time you want to you your Miracast device).