is_category
returns true if the current page being viewed is a category term page (i.e. a list of posts belonging to some term) and false otherwise. So inside single.php
it will always return false.
If you want to check if a the current post in the Loop belongs to some category term, then you need to use has_term()
.
For example:
<?php if( has_term('news','category') ) { ?>
<p class="featured-news-post-meta"><?php echo get_the_date('m.d.Y'); ?></p>
<?php } else { ?>
<p class="featured-news-post-meta">By <span class="featured-news-author"><?php echo get_the_author(); ?></span> / <?php echo get_the_date('m.d.Y'); ?></p>
<?php } ?>