Get the URL, width and height of an image where the width and height are a specified minimum

If you have the size of the square container before hand as you do, 208x208px then why not just add a custom image size to your functions file and call that image size in your template.

Add this to your themes functions.php:

add_image_size( 'custom-size', 208, 208, true );

if you are running WordPress 3.9 you can use cropping as well so you could use it like this:

add_image_size( 'custom-size', 220, 220, array( 'center', 'center' ) );

Then call it in your template file:

$media_preview = wp_get_attachment_url( get_post_thumbnail_id($post->ID, 'custom-size') );