PowerShell (the engine) runs fine under .NET 4.0. PowerShell ( the console host and the ISE) do not, simply because they were compiled against older versions of .NET.
To update just the ISE to use .NET 4.0, you can change the config ($psHome\powershell_ise.exe.config) file to have a chunk like this:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<startup>
<supportedRuntime version="v4.0.30319" />
</startup>
</configuration>