It might be a little trickier that it seems, but the Arduino does support a pin_change interrupt:
http://playground.arduino.cc/Main/PinChangeIntExampleIf you need an exact doubling of frequency whilst retaining the duty cycle, then I think this approach might work...
Firstly, you need to keep the code as lean as possible. If the PWM input is 8-bit (256 levels), then you need to be sampling it above 50kHz. A 16MHz microcontroller gives you about 300 clock cycles per sample, though you're looking at just 150 for the doubled output. That should be enough if you use some lower level code. (E.g., use PORTB=xx rather digitalWrite, and use integer variables instead of floats. Maybe even use some assembly code if you can. )
Step 1: Use two variables inside the pin_change interrupt function to count between incoming PWM changes in microseconds. This maps out a complete on-off duty cycle.
Step 2: Once you have the cycle durations, duplicate these values using a binary bit-shift-right to divide them by 2 (i.e, c = a >> 1; d = b >> 1;). You now have four variables: a=on time duration, b=off time duration, c=on/2, d=off/2.
Step 3: Use these values to create four new ones by adding them to the current system micros() value. These will be r=c+micros(), s=a+micros(), t=a+c+micros(), u=a+b+micros(). You now have four times in the (very near!) future at which you need to toggle your output pin.
Step 4: Create a timer_interrupt routine with "attachInterrupt(function, period)" (
http://playground.arduino.cc/Code/Timer1) A period of 100 might be OK, but you may need to play around with this. It needs to be as low as possible without locking up. Inside that interrupt function just compare your four time values (rstu) with micros() and toggle the output pin as each is reached.
You may have to set "period" to a much higher value to give the function time to execute, but it should still work, just not at 8-bit resolution. Also, at 200Hz input you'll get a 5ms delay in the output signal, but that's inevitable and might not be a problem.
If throwing a full-blown Arduino at it is overkill, the 8-pin ATTiny chips also support the pin_change interrupt. However, the internal clocks of stand-alone microcontrollers are not that great (+/- a few percent typically). An external crystal is always better for anything time-critical.
If you've got an Arduino and an oscilloscope it shouldn't take very long to try this out. If you don't have a scope, at these frequencies you could probably feed the signal into a PC's soundcard and capture the waveform. (You'd need to check, but I think the mic input expects a few mV, the line input about 0.5V, so you'd need to divide down the PWM output to a suitable level.)
Interesting problem! Let us know if you can get it working.