BUG: signal.welch: ensure floating point dtype regardless of input dtype

Fixes gh-3655.