Is really strange...
In latest release i've this function:
= If is present code in my custom css settings and my_style.css file not exist (removed manually or first upgrade from old release), make new my_style.css
if (!empty($mycustomcss) && (!file_exists(css_path())))
// make my_style.css and write write css code!
$makecss = file_put_contents(css_path(), "/********* Do not edit this file *********/\n/*\nMy Custom CSS - Maked by Salvatore Noschese\na.k.a. DarkWolf - http://www://darkwolf.it/\n*/\n\n".mycustomcss());
And unlink (remove file) is only with this:
= if exist file but no code in my custom css settings...
elseif (empty($mycustomcss) && file_exists(css_path()))
I've test in local machine and in webserver and don't have found any problem :/
Can you try to edit "my-custom-css.php" and change "Version: 1.5" to 1.4 and force a new update to test again? See also directory permission (via ftp) in "my-custom-css" directory ;)